java复习题.docx

上传人:b****5 文档编号:11895488 上传时间:2023-04-08 格式:DOCX 页数:52 大小:43.70KB
下载 相关 举报
java复习题.docx_第1页
第1页 / 共52页
java复习题.docx_第2页
第2页 / 共52页
java复习题.docx_第3页
第3页 / 共52页
java复习题.docx_第4页
第4页 / 共52页
java复习题.docx_第5页
第5页 / 共52页
点击查看更多>>
下载资源
资源描述

java复习题.docx

《java复习题.docx》由会员分享,可在线阅读,更多相关《java复习题.docx(52页珍藏版)》请在冰豆网上搜索。

java复习题.docx

java复习题

注意Java中是大小写敏感的,请注意大小写的使用!

一、判断题:

9.有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。

(╳)

10.构造方法一般不允许有任何返回值,因此需要在返回类型处标注为void。

(╳)

11.任何类都必须显式地定义该类的构造方法,以便对类的成员进行各种初始化操作。

(╳)

12.Java语言对内存的释放是采用垃圾自动回收机制。

Java虚拟机自动判断并收集“垃圾”,但一般不会立即释放它们的存储空间。

(√)

13.Java系统提供了方法“System.gc()”来强制立即回收“垃圾”,即当调用该方法时,系统会立即回收“垃圾”。

(╳)

14.程序可以借助于finalize方法来精确记录在程序执行过程中内存资源的释放情况。

(╳)

15.如果在定义一个类的时候没有用到关键字extends,则这个类没有直接父类。

(╳)

16.Java语言规定:

任何一个子类的构造方法都必须调用其父类的构造方法(包括隐式调用),并且调用父类构造方法的语句必须是子类构造方法的第一条语句。

(√)

17.如果一个类不是内部类,则它的访问属性不能是private或者protected。

(√)

18.抽象方法不能含有方法体,并且必须在抽象类中。

(√)

19.抽象类是不能实例化的。

抽象类的实例化,应当通过其不具有抽象属性的子类来创建。

(√)

20.因为标准输入流(System.in)并不是真正的文件,所以标准输入流不像文件那样有明显的输入流结束标志,即如果程序不做特殊处理,则程序永远无法得到标准输入流的结束标志。

(╳)

21.在Java中,类java.io.File虽然不直接处理文件内容,但可以通过类java.io.File达到改变当前路径的目的。

(╳)

22.采用事件适配器比采用事件监听器的执行效率要高,因为采用事件适配器可以只处理所需处理的事件。

(╳)

23.编写小应用程序实际上就算要实现类java.applet.Applet的子类,该子类必须是public类型,否则将在运行时出现异常。

(√)

24.类java.applet.Applet的方法getCodeBase()返回小应用程序所在的URL地址,方法getDocumentBase()返回的是小应用程序所作的HTML文件的URL地址。

(√)

25.在HTML文件中,关键字CODEBASE可以用来设置小应用程序所作的路径,CODEBASE的属性值既可以是一个URL地址,也可以是相对于当前HTML文件的相对路径。

(√)

26.小应用程序允许在网页中给小应用程序传递参数。

在网页中可以设置多个参数,其格式为

(╳)

27.要启动一个线程要调用java.lang.Thread的方法start。

在运行完方法start之后,该线程就处于运行状态。

(╳)

28.当执行到同步语句“synchronized(引用类型表达式)”的语句块时,引用类型表达式所指向的对象就会被锁住,不允许其他线程对其进行访问,即当前的线程独占该对象。

(√)

29.方法notifyAll和notify都是类java.lang.Object的成员方法。

调用notifyAll会激活所有处于等待态的线程。

调用notify最多只能激活一个处于等待态的线程。

(√)

30.对于数组int[][]t={{1,2,3},{4,5,6}}来说,t.length等于3,t[0].length等于2。

(╳)

31.由于Java源程序文件名与类名存在同名的约束关系,所以一个Java源程序文件最多只会包含一个类。

(╳)

二、选择题

1.设HelloWorld.java的文件内容如下:

publicclassHelloWorld

{

publicstaticvoidMain(Stringargs[])

{

System.out.println(“HelloWorld”);

}

}//类HelloWorld结束

下面说法正确的是()。

(D)

A.在控制台命令提示符下先运行命令“javacHelloWorld.java”,然后运行命令“javaHelloWorld”,结果输出一行字符串“HelloWorld”。

B.在控制台命令提示符下先运行命令“javacHelloWorld”,然后运行命令“javaHelloWorld.class”,结果输出一行字符串“HelloWorld”。

C.在控制台命令提示符下先运行命令“javacHelloWorld.java”,然后运行命令“javaHelloWorld.class”,结果输出一行字符串“HelloWorld”。

D.以上答案都不对。

2.在一个合法的Java源程序文件中定义了3个类,则其中属性为public的类可能有几个()。

   (A)

A.1B.2C.3D.4

3.下面哪些选项不可以用作变量名的首字符()?

(C)

A.字母B.下划线(_)C.数字D.美元符号($)

4.下面哪个单词是Java语言的关键字?

()(B)

A.sizeofB.AbstractC.nullD.String

5.下面哪些单词是Java语言的关键字?

()(B)

A.ForB.forC.FORD.True

6.下面哪些单词是Java语言的关键字?

()(D)

A.nullB.falseC.lengthD.instanceof

7.下面哪个语句不会产生编译警告或错误?

()(C)

A.floatf=1.3;B.charc=”a”;C.byteb=25;D.booleand=null;

8.下面哪个赋值语句会产生编译错误?

()(A)

A.floata=2.0;B.doubleb=2.0C.intc=2;D.longd=2;

9.下面哪条语句不可以通过编译?

()(B)

A.floata=1;B.floatb=1.0C.floatc=2e1f;D.floatd=0x1234;

10.设各个变量的定义如下,哪个选项的值为false?

()(D)

inti=1;

floatf=1.0f;

doubled=1.0;

booleanb=true;

A.i==f;B.i==d;C.f==d;D.2.1

11.下面程序片段输出的是()。

(C)

inta=3;

intb=1;

if(a=b)

System.out.println(“a=”+a);

A.a=1B.a=3C.编译错误,没有输出D.正常运行,但没有输出

12.执行完下面程序片段后,哪个结论是正确的?

()(B)

inta,b,c;

a=1;

b=2;

c=(a+b>3?

a++:

++b);

A.a的值是2,b的值是3B.a的值是1,b的值是3

C.a的值是1,b的值是2D.c的值是false

18.关于Java的垃圾回收机制,下面的结论正确的是()。

(C)

A.程序可以任意指定释放内存的时间。

B.正确的程序写法是能依赖于垃圾回收的时间或者顺序。

C.程序可以明确地标识某个局部变量的引用不再被使用。

D.程序可以显式地立即释放对象占有的内存。

19.下面哪个方法定义置于第8行将会导致编译错误?

()(B)

(1).classSuper

(2).{

(3).publicfloatgetNum(){return3.0f;}

(4).}

(5).publicclassSubextendsSuper

(6).{

(7).

(8).}

A.publicfloatgetNum(){return4.0f;}

B.publicvoidgetNum(){}

C.publicvoidgetNum(doubled){}

D.publicdoublegetNum(floatd){return4.0d;}

20.关于下面的程序,哪个结论是正确的?

()(A)

publicclasstest

{

staticlongm_index;

staticintm_age;

publicstaticvoidmb_setData(longn)

{

m_index=n;

}

publicstaticvoidmain(String[]args)

{

mb_setData(98);

System.out.println("Index="+m_index+";Age="+m_age);

}

}

A.程序可以通过编译并正常运行,结果输出“Index=98;Age=0”。

B.程序可以通过编译并正常运行,结果输出“Index=0;Age=98”。

C.程序可以通过编译并正常运行,结果输出“Index=0;Age=0”。

D.程序无法通过编译。

21.下面程序的输出是()。

(C)

classJ_Class

{

staticintm_data=0;

}

classJ_Test

{

publicstaticvoidmain(String[]args)

{

J_Classa=newJ_Class();

J_Classb=newJ_Class();

a.m_data=1;

b.m_data=2;

System.out.println(a.m_data);

}

}

A.0B.1C.2D.程序无法通过编译。

22.要求设计一个类,它拥有一个特殊的数据成员,该数据成员必须能够被这个类的子类访问到,但不能被不在同一个包内的其他类访问到。

下面哪个设计可以满足该要求?

()(C)

A.该数据成员的封装属性设置为public。

B.该数据成员的封装属性设置为private。

C.该数据成员的封装属性设置为protected。

D.该数据成员不需要特殊的封装属性。

23.假设在Java源程序文件“MyClass.java”中只含有一个类,而且这个类必须能够被位于一个庞大的软件系统中的所有Java类访问到,下面哪个声明有可能是符合要求的声明?

()(D)

A.privateclassMyClassextendsObject

B.publicclassmyclassextendsObject

C.publicclassMyClassextendslang

D.publicclassMyClassextendsObject

24.下面的程序代码会产生编译错误,应当如何修正?

()(C)

publicclasstest

{

privateintm_data=3;

publicstaticvoidmain(Stringargs[])

{

System.out.println(m_data);

}

}

A.将“privateintm_data”改为“protectedintm_data”。

B.将“privateintm_data”改为“publicintm_data”。

C.将“privateintm_data”改为“staticintm_data”。

D.将“privateintm_data”改为“intm_data”。

25.关于下面的程序,哪个结论是正确的?

()(A)

publicclasstest

{

publicstaticvoidmain(Stringargs[])

{

intsum=0;

for(inti=0;i<10;i++)

sum+=i;

System.out.println("Sum(0.."+i+")="+sum);

}

}

A.程序无法通过编译。

B.程序可以通过编译,但无法正常运行。

C.运行程序可以输出“Sum(0..10)=45”。

D.运行程序可以输出“Sum(0..9)=45”。

26.下面哪个语句会发生变异错误?

()(C)

A.int[]a;B.int[]b=newint[10];C.intc[]=newint[];D.intd[]=null;

27.关于下面程序,哪个结论是正确的?

()(D)

classtest

{

publicstaticvoidmain(Stringars[])

{

int[]a=newint[5];

booleanb[]=newboolean[5];

System.out.println(a[1]+b[2]);

}

}

A.程序可以通过编译并正常运行,结果输出“0false”

B.程序可以通过编译并正常运行,结果输出“1true”

C.程序可以通过编译并正常运行,结果输出“0”

D.程序无法通过编译

28.下面哪个语句不含语法错误?

()(A)

A.Stringa[]={"1","2","3","4",null};

B.Stringb[]={"1","2","3","4",'c'};

C.Stringc[]=newString[5];

D.Stringd[]=newString[5]{"1","2","3","4","5"};

29.下面哪个语句定义了5行5列的数组?

()(C)

A.inta[5][5]=newint[5][5];

B.int[5][5]b=newint[5][5];

C.int[]c[]=newint[5][5];

D.intd[][]=newint[25];

30.对于数组“int[]a”,下面哪些语句可以输出数组a的元素个数?

()(D)

A.System.out.println(a.size);

B.System.out.println(a.size());

C.System.out.println(a.length());

D.System.out.println(a.length);

31.关于下面的代码,哪个结论是正确的?

()(B)

Stringa="java";

Stringb="java";

Stringx="ja";

Stringy="va";

Stringc=x+y;

A.a和b指向同一个实例对象,a和c指向同一个实例对象。

B.a和b指向同一个实例对象,a和c不指向同一个实例对象。

C.a和b不指向同一个实例对象,a和c指向同一个实例对象。

D.a和b不指向同一个实例对象,a和c不指向同一个实例对象。

32.下面哪个类最适合处理大数据量的文本文件?

()(C)

A.java.io.FileInputStreamB.java.io.FileReader

C.java.io.BufferedReaderD.java.io.RandomAccessFile

33.关于下面程序,哪个结论是正确的?

已知该源程序的文件名是“J_Test.java”,其所在路径和当前路径都是“C:

\example”。

()(C)

importjava.io.File;

classJ_Test

{

publicstaticvoidmain(Stringars[])

{

Filef=newFile("J_Test.class");

System.out.println(f.getAbsolutePath());

}

}

A.程序可以通过编译并正常运行,结果输出“J_Test.class”

B.程序可以通过编译并正常运行,结果输出“C:

\example”

C.程序可以通过编译并正常运行,结果输出“C:

\example\J_Test.class”

D.程序无法通过编译或无法正常运行

34.下面哪个方法不是小应用程序类Applet的基本方法?

()(D)

A.start()B.stop()C.init()D.kill()

35.关于小应用程序执行过程的生命周期,下面哪个结论正确?

()(D)

A.当小应用程序从运行态进入停止态时,首先要调用的成员方法是pause()。

B.当关闭正处于运行态的小应用程序时,首先要调用的成员方法是destroy()。

C.当小应用程序从停止态进入运行态时,首先要调用的方法是paint()。

D.当关闭正处于停止态的小应用程序时,首先要调用的成员方法是destroy()。

36.已知小应用程序的源程序文件名是“J_Test.java”,则下面哪个语句可以用在HTML文件中用来加载该小应用程序。

()(A)

A.

B.

C.

D.

37.实现了一个继承接口java.lang.Runnable的类需要实现如下的哪个方法?

()(B)

A.startB.runC.waitD.paint

38.已经声明了类“publicclassJ_TestimplementsRunnable”,下面哪个语句启动该类型的线程?

()(A)

A.Threadt=newThread(newJ_Test());t.start();

B.J_Testt=newJ_Test();t.start();

C.J_Testt=newJ_Test();t.run();

D.newJ_Test.start();

39.已经声明了类“publicclassJ_TestextendsThread”,下面哪个语句启动该类型的线程?

()(B)

A.newJ_Test.run();

B.J_Testt=newJ_Test();t.start();

C.J_Testt=newJ_Test();t.run();

D.newJ_Test.start();

40.如果一个线程调用了方法sleep(),则类java.lang.Threaed的哪个方法可以唤醒该线程?

()(D)

A.notify()B.resume()C.run()D.以上都不对

41.Java语言中,负责并发管理的机制是()。

(D)

A.垃圾回收 B.虚拟机 C.代码安全 D.多线程

42.下列描述中,错误的是()。

(A)

A.Java要求编程者管理内存

B.Java的安全性体现在多个层次上

C.Applet要求在支持Java的浏览器上运行

D.Java有多线程机制

43.Java为移动设备提供的平台是()。

(A)

A.J2MEB.J2SEC.J2EED.JDK5.0

44.JDK中提供的文档生成器是()。

(C)

A.java.exeB.javap.exeC.javadoc.exeD.javaprof.exe

45.在Java语言中,不允许使用指针体现出的Java特性是()。

(D)

A.可移植B.解释执行C.健壮性D.安全性

46.下列方法中,不属于WindowListener接口的是()。

(D)

A.windowOpened()B.windowClosed() C.windowActivated() D.mouseDragged()

47.下列语句中,属于多分支语句的是()。

(B)

A.if语句B.switch语句C.dowhile语句D.for语句

48.阅读下列代码

publicclassTest2005{

publicstaticvoidmain(Stringargs[]){

Strings=″Test″;

Switch(s){

case″Java″:

System.out.print(″Java″);

break;

case″Language″:

System.out.print(″Language″);

break;

case″Test″:

System.out.print(″Test″);

break;}}}

其运行结果是()。

(C)

A.JavaB.LanguageC.TestD.编译出错

49.阅读下列代码

publicclassTest2005{

publicstaticvoidmain(Stringargs[]){

System.out.println(~(0xa5)&0xaa);}}

其运行结果是()。

(B)

A.0xa5B.10C.0x50D.0xaa

50.阅读下列代码

publicclassTest2005{

publicstaticvoidmain(Stringargs[]){

System.out.println((3>2)?

4:

5);}}

其运行结果是()。

(C)

A.2B.3C.4D.5

51.阅读下列代码

publicclassTest{

publicstaticvoidmain(Stringargs[]){

System.out.println(89>>1);}}

其运行结果是()。

(A)

 A.44B.45C.88D.90

52.在Applet中显示文字、图形等信息时,应使用的方法是()。

(A)

 A.paint()B.init()C.st

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1