当前位置:文档之家› 最新JAVA复习题答案

最新JAVA复习题答案

最新JAVA复习题答案
最新JAVA复习题答案

JA V A期末复习题答案

一、填空:(20空,每空1分,共20分)

1、要激活一个Java小应用程序applet需具有html_文件。

2、一个Java源程序文件必须以_java_为其扩展名。

3、Java编译器产生的文件的扩展名为_class_。

4、Java程序的每个方法以_{_开始,以_}_结束。

5、每个Java程序语句以__;__结束。

6、所有程序均可以用顺序、选择和循环三种控制结构编写。

7、一个只有在定义它的方法中是可知的变量称为局部变量。

8、被调用方法中的_return_语句可以将表达式的值回送给调用它的方法。

9、方法头中的关键字_void__用来表示方法不还返回值。

10、标识符的作用域是程序中可以使用此标识符的范围。

11、从被调用方法将控制权交给调用者的两种方式是__return__、__}__。

12、当applet开始执行时,调用一次_init__方法。

13、每当浏览器的用户再次访问applet所在的html页时都会调用_start_方法。

14、调用_paint_方法在applet上画图。

15、_resize_方法用来在执行applet时改变applet的宽度和高度。

16、_repaint_方法调用applet的update方法,接着update方法又调用applet的paint方法。

17、每当浏览器的用户离开applet所在的html页时要调用applet的_stop_方法。

18、在java中可以使用许多方法同名,但各方法使用的参数的类型和数量不同,这称为方法重载。

19、限定词_final_用来声明只读变量。

20、数组元素之所以相关,是因为它们具有相同的名字和类型。

21、用于指出数组中某个元素的数字称为数组下标。

22、使用两个下标的数组被称为__二维__数组。

23、通过_·__运算符与类的对象相连,可以访问此类的成员。

24、指定为_private_的类成员只能被此类中的成员访问。

25、类的方法通常设为_public_,而类的实例变量一般设为_private_。

26、关键字_class__开始一个类定义。

27、指定为_public_的类成员可被此类作用域中的任何对象访问。

28、_new__操作符动态地为对象按照其指定的类型分配内存,并返回该类的一个引用。

29、_static_实例变量代表类范围的信息。

30、_this_引用作为隐含的第一个参数被传送给类中的每个方法。

31、关键字_final_表明一个对象或变量在初始化后不能被修改。

32、声明为static的方法不能访问_非static_类成员。

33、如果Alpha类继承Beta类,Alpha类被称为_子_类,Beta类被称为_超_类。

34、继承性使软件重用成为可能,它不仅节省开发时间,而且鼓励使用已经证明过的,高质量的软件组件。

35、四种成员访问限制是_public__、_protected_、_private_、_friendly_。

36、如果一个类包含了一个或多个abstract方法,它是_abstract_类。

37、getName方法的返回类型为_String__。

38、_drawLine__方法在两个点之间绘制一线段。

39、RGB是__红__、__绿__、__蓝__。

40、字体大小以_点__为单位。

41、鼠标被移动时会发生_mouseMove__事件。

42、GUI是图形用户界面的缩写。

43、使用_setLayout_方法为构件容器设置布局管理器。

44、mouseDrag事件触发了一个_mouseDown__事件和一个_mouseUp_事件。

45、使用__Menu___类创建菜单对象。

46、向文本区域的_setEditable__方法传递true,将允许用户修改文本。

47、滚动条事件由_handleEvent_方法进行处理。

48、C++是__单__线程语言,而Java是__多__线程语言。

49、_stop__方法用于终止线程的运行。

50、有四种原因可能使线程不能运行,它们是等待、休眠、挂起、由于I/O操作而阻塞。

51、有两种原因可能使线程进入死亡状态,它们是run方法终止、线程调用了stop方法。

52、线程通过调用_sleep_方法可以休眠一段时间,然后恢复运行。

53、Applet类的_getImage_方法将图像装入applet。

54、Graphics类的_drawImage_方法在applet上显示图象。

55、计算机处理的数据最终分解为_1_和_0_的组合。

56、计算机处理的最小数据单元称为_位_。

57、FileOutputStream、FileInputStream、RandomAccessFile文件流类的_close_方法,可用于关闭文件。

58、Java的网络类在_https://www.doczj.com/doc/b811920418.html,_包中。

59、URL是统一资源定位符的缩写。

60、构成word wide web的关键协议是_http__。

二、判断下列的叙述是正确还是错误。若为错误,解释原因,并纠正。

(10题,每题3分,共30分)

1、注释的作用是使程序在执行时在屏幕上显示//之后的内容。

错。注释在程序执行时不会造成任何操作的执行。

2、在方法中使用的变量必须先声明再使用。

正确。

3、声明变量时必须指定一个类型。

正确。

4、Java认为变量number与Number是相同的。

错。Java严格区分大小写字母。

5、变量声明可在java方法体内任何位置出现。

正确。

6、default在switch选择结构中是必须的。

错。它是可选项,如不需要可以不写。

7、break语句在switch结构中的default情况中是必须的。

错。break用于退出default,当default位于switch结构的最后时可省略。

8、一个数组可以存放不同类型的数值。

错。一个数组只能存放同一种类型的数值。

9、数组的下标通常是float型。

错。应为整数或整数表达式。

10、数组的某个元素被传递给一个方法并被该方法修改,当被调用方法执行完毕时,这个元素中含有修改过的数值。

错。因为数组的单个元素以传值调用方式传递,所以不能被修改。

11、超类代表的对象比子类多。

正确。

12、子类封装的功能比它的超类少。

错。子类至少继承了超类的全部功能。

13、用"= ="比较字符串对象时,如果字符串包含的是同一个值时,结果为true。

错。该运算符比较的是它们是否是内存中的同一个对象。

14、字符串在创建后可以被修改。

错。字符串是一个常量,创建后不能修改。

15、drawOral(x,y,50,100)的前两个参数指定了椭圆的中心坐标。

错。前两个参数指定了矩形左上角的位置。

16、在Java坐标系统中,从左向右x值增加。

正确。

17、fillPolygon方法用当前颜色画一个实心多边形。

正确。

18、drawArc方法允许负的角度。

正确。

19、像素坐标(0,0)位于屏幕的正中央。

错。位于左上角。

20、BorderLayout是面板的缺省布局管理器。

错。缺省布局管理器是FlowLayout。

21、当鼠标指针位于一个GUI构件上时,发生一个MouseOver事件。

错。发生一个MouseEnter事件。

22、一个面板不能被加入到另一个面板中。

错。可以

23、在使用BorderLayout时,最多可以使用五个构件。

正确。

24、程序员在创建一个对话框时,至少必须创建一个菜单,并将它加入到对话框。

错。对话框不需要菜单。

25、文本区域的文本总是只读的。

错。缺省时,文本区域是可编辑的。

26、如果线程死亡,它便不能运行。

正确。

27、在Java中,高优先级的可运行线程会抢占低优先级线程的处理机。

正确。

28、Java目前支持两种格式的图象文件,它们的扩展名分别为.jif和.jpg。

错误。应该是.gif和.jpg

29、在随机存取文件中查找指定记录时不必检查每一条记录。

正确。

30、随机存取文件中的记录必须等长。

错误。一个随机存取文件中的记录长度一般相等。

31、一旦建立一个URL对象,它就不能再改变了。

正确。

32、进程利用流socket建立与其他进程的连接。

正确。

33、服务器通过一个端口与客户机连接。

正确。

34、基于安全考虑,许多Web浏览器只允许Java的applet在其所运行的计算机上进行文件操作。

错。大多数浏览器不允许applet在客户机上进行文件操作。

三、写出完成下述任务的Java语句:(5题,每题5分,共25分)

1、显示用户输入一整数。

答:Label prompt;

Prompt=new Label("Enter an Integer"); Add(promtp);

2、从键盘读入一整数,存入整型变量age。假设TextField只调用input而且action方法的Object参数O含有用户输入的文本。

答:age=Integer.parseInt(o.tostring());

3、若变量number不等于7,用paint方法在(10,10)坐标处显示"The variable number is not equal to 7"。假设Graphics对象g是paint方法的参数。

答:if(number!=7)

g.drawString("The variable number is not equal to 7.",10,10);

4、使用Graphics对象g在paint方法中打印下面两行信息:

答:This is a javaProgra坐标值自选。

g.drawString("This a java",10,10);

g.drawString("Program",10,25);

5、写出四种不同形式的Java语句使变量x增1。

答:x=x+1;

x+=1;

++x;

x++;

6、将x和y值相加后赋与Z,并在运算后使x自增1。

答:z=x+++y;

7、使变量x减1然后从变量total中减去x。

答:total-=--x;

8、用for结构求出从1到99中所有奇数的和。

答:int sum=0;

for(int i=1;i<=99;i+=2)

sum+=i;

9、用while循环打印出1到20个整数,要求每行只打印5个整数。

答:int x=1;

while(x<=20){

System.out.print(x);

if(x%5==0)

System.out.print();

else

System.out.print('\t');

x++;

}

10、按步给出java语句:

1) 定义只读变量arraySize并初始化为10。

2) 声明一个float型数组含有arraySize个元素,并将其初始化为0。

3) 用for循环结构求此数组所有元素之和。

答:final int arraySize=10;

float arr[]=new float[arraySize];

float total=0;

for(int i=0;i

total+=arr[i];

11、按步给出java语句。

(1)声明一个有3行3列的整型数组,并将其先初始化为0。

(2)用for循环结构,将数组的每个元素赋值为它的两个下标之和。答:int arr[][]=new int[3][3];

for(int i=0;i

for(int j=0;j

arr[i][j]=i+j;

12、比较s1中的字符串和s2中的字符串的内容是否相等。

答:s1.equals(s2);

13、使用"+="将字符串s2附加到字符串s1上。

答:s1+=s2;;

14、确定s1中的字符串长度。

答:s1.length();

15、写一个只能运行一次的do_while循环。

答:int x=0;

do{

x++;

}

while(x<=0);

16、写一个永远无法执行的for循环。

答:for(int i=1;i<1;i++){}

四、指出并修改下述语句中的错误(5题,每题3分,共15分)

1、if(c<7);

g.drawString("c is lass them 7",25,25);

if(c<7)

g.drawString("c is lass then 7",25,25);

2、if(c=>7)

g.drawString("c is equal to or greater than 7",25,25);

if(c>=7)

g.drawString("c is equal to or greater than 7",25,25);

3、while(c<=5)

{ product*=c;

++c;

while(c<=5)

{ product*=c;

++c;

}

4、if(gender= =1)

System.out.println("Woman");

else;

System.out.println("Man");

if(gender= =1)

System.out.println("Woman");

else

System.out.println("Man");

5、x=1;

while (x<=10);

x++;

}

x=1;

while (x<=10)

x++;

}

6、for(y=0.1;y!=1.0;y+=0.1)

System.out.println(y);

for(y=1;y!=10;y+=1)

System.out.println(y);

7、下面的代码打印值1到10

while(n<10)

System.out.println(n++);

n=1;

while(n<=10)

System.out.println(n++);

8、int g()

{ System.out.println("Inside method g"); int h()

{ System.out.println("Inside method h"); }}

int g()

{ System.out.println("Inside method g");} int h()

{ System.out.println("Outside method g");}

9、int sum(int x,int y)

{ int result;

result=x+y;

}

int sum(int x,int y)

{ return x+y;

}

10、int sum(int n)

{ if(n= =0) return 0;

else n+sum(n-1);

}

int sum(int n)

{ if(n= =0) return 0;

return n+sum(n-1);

}

11、void f (float a);

{ float a;

System.out.println(a);

}

void f (float a)

System.out.println(a);

}

12、void product()

{ int a=6,b=5,c=4,result;

result=a*b*c;

System.out.println("Result is"+result);

return result;

}

void product()

{ int a=6,b=5,c=4,result;

result=a*b*c;

System.out.println("Result is"+result);

}

13、int b[]=new int[10];

for(int i=0;i<=b.length;i++)

b[i]=1;

int b[]=new int[10];

for(int i=0;i

b[i]=1;

14、int a[][]={ {1,2},{3,4}};

a[1,1]=5;

14、int a[][]={ {1,2},{3,4}};

a[1][1]=5;

15、char x[]={'1', '2', '0', '2', '*', '*', 'P', 'C', 'M', };

g.drawChars(x,6,8,435,80);

char x[]={'1', '2', '0', '2', '*', '*', 'P', 'C', 'M', };

g.drawChars(x,6,3,435,80);

16、g.setColor (Color.Yellow);

g.setColor (Color.yellow);

17、buttonName=Button("Caption"); buttonName=new Button("Caption");

18、texField=new TextField(50, "Default Text");

texField=new TextField("Default Text",50);

五、回答问题:(5题,每题2分,共10分)

1、什么是"内存泄露"?

模拟试卷一的5.1

2、什么是"资源泄露"?

夭折的程序会使某一资源处于别的程序不能使用的状态。

3、如果try块中没有发出例外,当try块结束执行时,控制会转移到哪里去?

模拟试卷一的5.2

4、常规的applet和application应该捕获Error对象吗?

Error对象一般是java系统中的严重问题,大多数程序不希望捕获Error对象。

5、如果有几个catch块都与发出的异外对象类型相符,会产生什么结果?

模拟试卷二的5.1

6、发出一个例外是否一定会使程序终止?

不会,但它会终止产生该例外的块。

7、下面程序块中,do_while循环将执行多少遍?循环结束时,count等于多少?int count=10;

do

{ ++count;}

while (count<=15);

模拟试卷二的5.2

8、什么是结构化在程序设计?

模拟试卷一的5.3

9、类与对象是怎样联系起来的?

类可以再内存中实例化一个对象,以便程序使用。

10、OOP的三个重要机制是什么?它们有什么关系?

模拟试卷一的5.4

11、构造方法的作用是什么?它的定义有哪些特点?

模拟试卷二的5.3

12、举例说明如何实例化一个对象。

例如:

import java.applet.*;

import java.awt.*;

public class Welcome extends applet{

public void paint(Graphics g){

g.drawString("Welcome",25,25);

}

}

本例中Welcome类在内存中实例化了一个执行applet的对象。

13、this引用的作用是什么?举例说明。

14、如何定义一个抽象类?抽象类的功能是什么?

模拟试卷一的5.5

15、包的作用是什么?如何创建一个包?

16、接口的作用是什么?它包含哪些内容?

模拟试卷二的5.4

17、try块有几种嵌套形式?试说明之。

18、怎样将字符串连接起来?请举一例说明之。

19、java的applet是怎样嵌入到html文档中的?在html中至少有哪些说明?模拟试卷二的5.5

20、applet的三个主要方法init(),start(),paint()的执行顺序是什么?

init()

start()

paint()

21、设计一个菜单的步骤是什么?

用MenuBar构造函数构造菜单栏对象

用Menu构造函数构造菜单对象

用MenuItem构造函数构造菜单项对象

用Menu类的add方法将菜单项加入到菜单中

用MenuBar类的add方法将菜单加入到菜单栏中

用Frame类的setMenuBar方法将菜单栏加入到窗口上。

22、在绘图过程中,repaint(),update()和paint()方法各起何作用?paint()可将对象画出到图形界面上

repaint()调用update方法

update()先清除画面再调用paint方法

JAVA复习题 有答案

复习题 一、选择题 1、下列Java标志符中合法的是:() A H3_sum B -name C student# D 9_Hello123 2.Java源文件和编译后的文件扩展名分别为() A. .class和.java B. .java和.class C. .class和.class D. .java和.java 3.对于同一消息,对象可以产生不同的行为,这称为类的什么特性?()A)继承性B)封装性C)多态性D)抽象性 4、用来引入包语句的关键词是:() A)import B)abstract C)package D)extends 5.对于小程序,当离开包含Applet的主页后又再返回时将调用()方法。A)start( ) B)init( ) C)destroy( ) D)stop( ) 6.下列对Java中的继承描述错误的说法是() A.子类只能有一个父类 B.子类可作为另一个子类的父类 C.子类可以访问父类的私有属性 D.子类继承父类的方法访问权限保持不变 7.哪种循环在条件表达式被计算之前至少执行循环体语句一次?( ) A)do-while循环B)for循环C)while循环D)以上都不是 8.定义数组String[] a={"ab","abc","abcd","abcde"},数组中a[1]指的是()。 A.ab B.abc C.abcde D.数组越界 9.如果希望组件从左往右,从上到下自动布局界面,应使用哪种布局?()A)没有B)BorderLayout C)FlowLayout D)GridLayout 10.下列说法正确的是() A. 最终类在特殊情况下可以有子类 B. 抽象类只能有一个子类 C. 多态可以通过方法重写和方法重载实现 D. 抽象类不可以声明成员变量和成员方法,只能声明抽象方法 11.下列语句中访问类的方法正确的是:() A)https://www.doczj.com/doc/b811920418.html, B)https://www.doczj.com/doc/b811920418.html,( ) C)book->name D)book_name 12.下列选项中哪个是类Pen的构造方法() A)public void Pen() {} B)public static Pen() {} C)public Pen() {} D)public static void Pen() {} 13.单击菜单触发的事件是?() A. ActionEvent B.ItemEvent C.MouseEvent D. KeyEvent 14.关于try/catch/finally结构的异常捕获和处理,说法错误的是()A)try部分是必须的B)catch部分也是必须的 C)可以有多个catch部分D)finally部分也是必须的

Java笔试题及答案

Java笔试题及答案 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。 package net.study; public class TestConStructor { public TestConStructor() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 详解: java 中没有<> := 这种运算符,if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是()

java考试试卷及答案

JAVA考试试卷及答案 选择题 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画 图操作。 A. start() B. stop() C. init() D. paint() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstract final class HI{···}B)abstract private move(){···} C)protected private number; D)public abstract class Car{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的? B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.String toString() B.void notify() C.void notifyAll() D.void wait() 11、给出下面代码:C public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[] value, int offset, int count) B.String(int[] codePoints,int offset, int count) C.String(String original) D.String(StringBuffer buffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能

JAVA期末试题及答案

Java 程序设计》课程试卷 1.使用 Java 语言编写的源程序保存时的文件扩展名是( )。 (A ) .class ( B ) .java C ) .cpp ( D ) .txt 2.设 int a=-2 ,则表达式 a>>>3 的值为( )。 (A ) 0 (B )3 (C ) 8 (D )-1 3.设有数组的定义 int[] a = new int[3] ,则下面对数组元素的引用错误的是( ) ( A )a[0]; ( B ) a[a.length-1]; (C )a[3]; (D )int i=1 ; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( )。 (A )封装 (B )继承 (C )覆盖 (D )重载 5.在类的定义中构造函数的作用是( )。 (A )保护成员变量 (B )读取类的成员变量 (C )描述类的特征 (D )初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( )。 ( A ) try ( B ) break ( C ) catch ( D ) finally 7.类与对象的关系是( )。 (A )类是对象的抽象 (B )对象是类的抽象 15. Java 语言使用的字符码集是 (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 (A) public (B) (C 对象是类的子类 (D )类是对象的具体实例 )。 8.下面哪一个是 Java 中不合法的标识符( ( A )$persons ( B ) twoNum ( C )_myVar ( D )*point 9.为 AB 类的一个无形式参数无返回值的方法 ( ) 。 ( A ) static void method( ) ( B ) public void method( ) ( C ) final void method( ) ( D ) abstract void method( ) 10.欲构造 ArrayList 类的一个实例,此类继承了 ( A ) ArrayList myList=new Object( ) ( B ) List myList=new ArrayList( ) ( C ) ArrayList myList=new List( ) ( D ) List myList=new List( ) 11. Java 源文件和编译后的文件扩展名分别为( (A) .class 和 .java (C).class 和 .class 12. 在 Java Applet 程序用户自定义的 (A) start( ) (B) stop( ) (C) init( ) 13. 对于一个 Java 源文件, (A) package,import,class (C) import,package,class 14. 下面哪个是非法的: (A) int I = 32; (C) double d = 45.0; method 书写方法头,使得使用类名 List 接口,下列哪个方法是正确的( ) ( B).java 和 .class (D) .java 和 .java Applet 子类中,一般需要重载父类的 (D) paint( ) import, class (B) class,import,package (D) package,class,import ( ) 定义以及 package 正确的顺序是: (B) float f = 45.0; (D) char c = // 符号错 AB 作为前缀就可以调用它,该方法头的形式为 方法来完成一些画图操作。 (D) Unicode 只能 在所在类中使用 则该成员变量必须使用的修饰是

JAVA复习题库及答案

第一题单项选择题 1、在下列说法中,选出最正确的一项是(A )。 A、Java 语言是以类为程序的基本单位的 B、Java 语言是不区分大小写的 C、多行注释语句必须以//开始 D、在Java 语言中,类的源文件名和该类名可以不相同 2、下列选项中不属于Java 虚拟机的执行特点的一项是(D )。 A、异常处理 B、多线程 C、动态链接 D、简单易学 3、下列选项中,属丁JVM 执行过程中的特点的一项是( C )。 A、编译执行 B、多进程 C、异常处理 D、静态链接 4、在Java 语言中,那一个是最基本的元素?( C ) A、方法 B、包 C、对象 D、接口 5、如果有2 个类A 和B,A 类基于B 类,则下列描述中正确的一个是( B )。 A、这2 个类都是子类或者超类 B、A 是B 超类的子类 C、B 是A 超类的子类 D、这2 个类郡是对方的子类 6、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D ) A、abstract B、private (本类) C、protected(本包及其他包的子类) D、不使用保留字 7、编译一个定义了3 个类的Java 源文件后,会产生多少个字符码文件,扩展名是什么?(D ) A、13 个字节码文件,扩展名是.class B、1 个字节码文件,扩展名是.class C、3 个字节码文件,扩展名是.java D、3 个字节码文件,扩展名是.class 8、下列关于Java 程序结构的描述中,不正确的一项是( C )。 A、一个Java 源文件中可以包括一个package 语句 B、一个Java 源文件中可以包括多个类定义,但是只能有一个public 类 C、一个Java 源文件中可以有多个public 类 D、源文件名与程序类名必须一致 9、下列说法正确的一项是( C )。 A、java.1ang.Integer 是接口 B、java.1ang.Runnable 是类 C、Doulble 对象在iava.1ang 包中 D、Double 对象在java.1ang.Object 包中 10、以下关于面向对象概念的描述中,不正确的一项是( B )。 A、在现实生活中,对象是指客观世界的实体

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

JAVA语言复习题及答案

14年(下)程序设计(JA V A语言)复习题 第一:单选 1. 若有定义int x=3,y;则执行语句y=(++x)+(++x)+(++x);后y=()。 (A) 12 (B) 18 (C) 9 (D) 15 2. 下列选项中,不是Java关键字的是()。 (A) double (B) Integer (C) float (D) default 3. 在成员变量与局部变量重名时,若想在方法内使用成员变量,要使用的关键字是()。 (A) super (B) import (C) this(D) return 4. 下列说法中错误的是( B )。 (A) 一个类中的实例方法可以调用其他实例方法 (B) 静态方法可以调用实例方法 (C) 实例方法可以调用静态方法 (D) 静态方法可以调用静态方法 5. 下列关于super的说法中错误的是()。 (A) 用来访问父类被隐藏的成员变量 (B) 用于调用父类中被重写的方法 (C) 用于定义父类 (D) 用于调用父类的构造函数 6. 下列选项属于接口中方法默认访问控制方式的是()。 (A) public (B) private (C) protected(D) default 7. 定义一个名为key的类,下列选项中使其不能被继承的定义是()。 (A) class key{} (B) native class key{} (C) class key{ final;} (D) final class key{} 8. 若有定义String tom=""我们是学生"";则tom.length()的值是()。 (A) 5 (B) 10 (C) 6 (D) 11 9. 调用repaint()方法,会出现什么情况( C )。 (A) 清除以前pain()方法所画的内容 (B) 保留原来pain()所画的内容 (C) 清除pain()以前所画的内容,再一次调用pain()方法 (D) 在pain()以前所画内容基础上,再一次调用pain()画新的内容 10. 从下面的main()调用java lyrics a kiss is but a kiss 中可以访问单词“kiss”的是()。 (A) args[0] (B) args[5] (C) args[4] (D) args[3] 11. 使一个线程放弃处理器并休眠1.5秒,应调用的方法是()。 (A) sleep(1.5) (B) sleep(1500) (C) suspend(1.5) (D) suspend(1500) 12. 如要使处于等待状态的线程恢复到运行状态,应调用的方法是()。 (A) start() (B) run() (C) resume() (D) notify() 13. 如果想获得一个InetAddress对象的主机域名,可调用的方法是()。

java基础考试题及答案

新员工考试 一、选择题(共30题,每题 2 分) 1. 下面哪些是合法的标识符?(多选题) A. $persons B. TwoUsers C. *point D. this E. _endline 答案A,B,E 分析Java 的标识符可以以一个Unicode 字符,下滑线(_),美元符($)开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字(this 保留字)。 2. 哪些是将一个十六进制值赋值给一个long 型变量?(单选题) A. long number = 345L; B. long number = 0345; C. long number = 0345L; D. long number = 0x345L 答案D 分析十六进制数以Ox开头,Io ng型数以L (大小写均可,一般使用大写,因为小写的 l 和数字1 不易区分)。 3. 下面的哪些程序片断可能导致错误? (多选题) A. String s = "Gone with the wind"; String t = " good "; String k = s + t; B. String s = "Gone with the wind"; String t; t = s[3] + "one"; C. String s = "Gone with the wind"; String standard = s.toUpperCase(); D. String s = "home directory"; String t = s - "directory"; 答案B,D 分析 A:String 类型可以直接使用+进行连接运算。 B:String 是一种Object ,而不是简单的字符数组,不能使用下标运算符取其值的某个元 素,错误。 C:toUpperCase()方法是String 对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果(String 类型)。 D:String 类型不能进行减(- )运算,错误。 4. point x 处的哪些声明是句法上合法的? (多选题) cIass Person { private int a; pubIic int change(int m){ return m; } } pubIic cIass Teacher extends Person { public int b;

JAVA测试题(三套含答案)

<测试一> 1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=1.3; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4.编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; System.out.println("The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F A.2variable B.variable2 C. _whatavariable

D. _3_ E. $anothervar F. #myvar 6.内部数据类型byte的取值范围是B A.0 - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } A.one B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default:

JAVA考试复习题(附答案)

《现代程序设计》(JAVA)考试复习题 一、选择题 1、关于Java语言叙述错误的是:(C) A.Java语言具有跨平台性B.Java是一种面向对象的语言 C.Java语言中的类可以多继承D.Java的垃圾收集机制自动回收程序已不再使用的对象 2、以下叙述正确的是:(B) A.构造方法必须是public方法B.main方法必须是public方法 C.Java应用程序的文件名可以是任意的D.构造方法应该声明为void类型 3、关于Java中数据类型叙述正确的是:(B) A、整型数据在不同平台下长度不同B.boolean类型数据只有2个值,true和false C.数组属于简单数据类型D.Java中的指针类型和C语言的一样 4、设int x=1,float y=2,则表达式x / y的值是:(D) A.0 B.1 C.2 D.以上都不是 5、以下语句有语法错的是:(A) A.int x=1;y=2;z=3 B.for (int x=10,y=0;x>0;x++); C.while (x>5); D.for(; ;); 6、关于类和对象的叙述正确的是:(A) A.Java的类分为两大部分:系统定义的类和用户自定义的类 B.类的静态属性和全局变量的概念完全一样,只是表达形式不同 C.类的成员至少有一个属性和一个方法D.类是对象的实例化 7、以下有关构造方法的说法,正确的是:(A) A.一个类的构造方法可以有多个B.构造方法在类定义时被调用 C.构造方法只能由对象中的其它方法调用 D.构造方法可以和类同名,也可以和类名不同 8、以下有关类的继承的叙述中,正确的是:(D) A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性 B.子类只能继承父类的方法,不能继承父类的属性 C.子类只能继承父类的非私有属性,不能继承父类的方法 D.子类不能继承父类的私有属性 9、void 的含义:(C ) A.方法体为空B.定义的方法没有形参 C.定义的方法没有返回值D.方法的返回值不能参加算术运算 10、关于Java中异常的叙述正确的是:(D ) A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误 C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的

java笔试题含答案

班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

JAVA语言程序设计期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案1(应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

Java程序设计试题及答案

一、判断题。判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。 1、Java语言具有较好的安全性和可移植性及与平台无关等特性。√ 2、Java语言的源程序不是编译型的,而是编译解释型的。√ 3、Java语言使用的是Unicode字符集,每个字符在内存中占8位。× 4、Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。√ 6、一个类可以实现多个接口,接口可以实现“多重继承”。√ 7、实现接口的类不能是抽象类。× 二、不定项选择题。 1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。 A、java B、class C、html D、exe 2、main方法是Java Application程序执行的入口点,关于main方法的方法首部,以下(B)项是合法的。 A、public static void main() B、public static void main(String args[]) C、public static int main(String[] arg) D、public void main(String arg[]) 3、关于下面代码的说法(C)是正确的 public class Example{ public static void main(String[] args){ int[] arr= new int[10]; } } A、编译时产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空(null) 4、不正确的表达式是(AB)。 A、float a=; B、Double a=new Double C、byte a = (byte)340; D、Byte a = 120; 5、定义一个类名为""的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为( CD)。 A、private class MyClass extends Object B、class MyClass extends Object C、public class MyClass D、public class MyClass extends Object 6、下列构造方法的调用方式中,正确的是(C)。 A、按照一般方法调用 B、由用户直接调用

Java复习习题答案

P13 2.参照例1-2编写一个java applet程序,程序能在浏览器中显示“你好,Hello”。(见p11例1-2) P24 2.参照2-4编写一个java应用程序,用户从键盘只能输入整数,程序输出这些整数的乘积。 import java.util.*; public class ZuoYe2_2{ public static void main (String args[ ]){ Scanner reader=new Scanner(System.in); long chengji=1; int m=0; while(reader.hasNextInt()){ int x=reader.nextInt(); m=m+1; chengji=chengji*x; } System.out.println(m+"个数的乘积为"+chengji); } } P41 1.有一个函数Y=-1+2x,x<0;-1,x=0;-1+3x,x>0编写一个java应用程序,从键盘输入一个X值,程序输出Y值。import java.util.*; public class ZuoYe3_1{ public static void main (String args[ ]){ Scanner reader=new Scanner(System.in); double y=0,x=0; x=reader.nextDouble(); if(x<0) y=-1+2*x; else if(x==0) y=-1; else if(x>0) y=-1+3*x; System.out.println(y); } } P41 2.编写一个java程序,使用while循环计算1-1000之间能被3和7同时整除的整数之和。 public class ZuoYe3_2{ public static void main(String args[]){ int sum=0,m=3,n=7,a=1; while(a<=1000){ if(a%m==0&&a%n==0) sum=sum+a; a++; } System.out.println("sum="+sum); } } P41 3.编写一个java程序,使用for循环计算8+88+888+8888+88888…的前十项和。 public class ZuoYe3_3{ public static void main(String args[]) {

java考试试卷及答案

JA V A考试试卷及答案 选择题 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画 图操作。 A. start() B. stop() C. init() D. paint() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstract final class HI{···}B)abstract private move(){···} C)protected private number; D)public abstract class Car{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的? B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.String toString() B.void notify() C.void notifyAll() D.void wait() 11、给出下面代码:C

public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[] value, int offset, int count) B.String(int[] codePoints,int offset, int count) C.String(String original) D.String(StringBuffer buffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能 B.包存储在类库中 C.包是类的容器D.上述说法都不对 14、下列不是String类的常用方法是:C

java期末考试复习题及答案

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[a.length-1]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是( A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 11.Java源文件和编译后的文件扩展名分别为( B ) (A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java

Java试题及答案

1、在中如果声明一个类为,表示什么意思? 答:是最终的意思,可用于定义变量、方法和类但含义不同,声明为的类不能被继承。 2、父类的构造方法是否可以被子类覆盖(重写)? 答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。 3、请讲述和的区别。 答:类所定义的对象是用于存放“长度固定”的字符串。 类所定义的对象是用于存放“长度可变动”的字符串。

4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢? 答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。 5、结合视频5(多线程),分析()和()方法的区别。 答:睡眠的意思 : () 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。 等待的意思: 如果调用了 () 方法,线程将处于等待状态。 用于在两个或多个线程并发运行时。 6、谈谈你对抽象类和接口的理解。 答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。 他使用来继承。 接口:一个接口允许一个类从几个接口继承而来,程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是来实现。 7. 的接口和的虚类的相同和不同处。 由于不支持多继承,而有可能某个类或对象要使用分别在几

个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是,所有方法默认情况下是.一个类可以实现多个接口。 8. 垃圾回收的优点和原理。并考虑2种回收机制。 语言中一个显著的特点就是引入了垃圾回收机制,使程序员最头疼的内存管理的问题迎刃而解,它使得程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 9.谈谈,,的区别。 -修饰符(关键字)如果一个类被声明为,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为的,又被声明为的。将变量或方法声明为,可以保证它们在使用中不被改变。被声明为的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为的方法也同样只

相关主题
文本预览
相关文档 最新文档