Java习题集Word文档格式.docx
《Java习题集Word文档格式.docx》由会员分享,可在线阅读,更多相关《Java习题集Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
程序员可以不必释放已创建的对象,因为Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。
Java语言中的数组元素只能是基本数据类型而不能为对象类型。
构造函数用于创建类的实例对象,构造函数名应与类名相同,在类中必须定义构造函数,且只能定义一个构造函数。
在Java中%是取余运算符,要求两端操作数为整型。
Java有两类程序:
JavaApplication和JavaApplet,其中JavaApplet程序只能在图形界面中工作,而JavaApplication程序只能在字符界面中工作。
Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out和标准错误输出System.err。
一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;
所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。
二.单项选择题
1.在浏览器中执行applet程序,以下选项中的哪个方法将被最后执行(C
)。
A、init()B、start()
C、destroy()
D、stop()
2.Javaapplication中的主类需包含main方法,main方法的返回类型是什么?
(D
)
A、intB、floatC、doubleD、void
3.有以下方法的定义,请选择该方法的返回类型(D)。
ReturnTypemethod(bytex,floaty)
{
return(short)x/y*2;
}
A、byteB、shortC、intD、float
4.设有下面两个类的定义:
classPerson{
classStudentextendsPerson{
long
id;
//身份证号
intscore;
//入学总分
Stringname;
//姓名
intgetScore(){
}
returnscore;
则类Person和类Student的关系是(B)。
A、包含关系B、继承关系C、关联关系D、上述类定义有语法错误
5.以下哪个关键字可以用来对对象加互斥锁?
(C
A、transient
B、serializeC、synchronizedD、static
6.在编写JavaApplet程序时,需要在程序的开头写上(B
)语句。
A、import
java.awt.*;
B、import
java.applet.*;
C、import
java.io.*;
D、import
java.awt.event.*;
7.容器Panel和Applet缺省使用的布局编辑策略是(
A
A、FlowLayoutB、BorderLayoutC、GridLayoutD、CardLayout
8.以下声明合法的是(B
A、defaultStrings;
B、publicfinalstaticnativeintw()
C、abstractdoubled;
D、abstractfinalinthyperbolicCosine()
9.以下程序段执行后将有(C)个字节被写入到文件afile中。
try{
FileOutputStreamfos=newFileOutputStream(“afile.txt”);
DataOutputStreamdos=newDataOutputStream(fos);
dos.writeInt(3);
dos.writeDouble(0.01);
dos.close();
fos.close();
catch(IOExceptione){
A、2B、8C、12D、16
10.编译并运行以下程序,以下描述哪个选项是正确的(C
1.classATestOftoString{
2.protectedStringtoString(){
3.returnsuper.toString();
}
4.}
A、编译通过运行无异常B、编译通过但运行时出错
C、行2出错,不能成功编译D、不能成功编译,行3出错
11.有以下程序片段,下列哪个选项不能插入到行1。
(A
1.
2.publicclassA{
3.//dosth
A、publicclassMainClass{}B、packagemine;
C、classANotherClass{
}D、importjava.util.*;
12.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。
A、privateB、protectedC、privateprotectedD、public
13.以下哪个不是Java的关键字?
A、FALSEB、constC、thisD、void
14.关于以下application的说明,正确的是(
C
1.class
StaticStuff
2.{
3.staticintx;
4.static{x+=5;
5.publicstaticvoidmain(Stringargs[])
6.{
7.
System.out.println(“x=”+x);
8.}
9.static{x/=5;
10.}
A、4行与9行不能通过编译,因为缺少方法名和返回类型
B、9行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:
x=1
D、能通过编译,但程序运行结果不可预知,因为变量x没有初始化
15.有程序如下,关于程序的描述哪个是正确的?
publicclassPerson{
staticintarr[]=newint[5];
publicstaticvoidmain(Stringa[])
{ System.out.println(arr[0]);
}
}
A、编译将产生错误B、编译时正确,但运行时将产生错误
C、正确,输出0D、正确,输出null
16.类ABC定义如下:
1.publicclassABC{
2.publicintmax(inta,intb){
3.
4.}
将以下哪个方法插入行3是不合法的。
(
B)
A、publicfloatmax(floata,floatb,floatc){}
B、publicintmax(intc,intd){}
C、publicfloatmax(floata,floatb){}
D、privateintmax(inta,intb,intc){}
17.以下关于构造函数的描述错误的是(A
A、构造函数的返回类型只能是void型。
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
18.有语句Strings=”helloworld”;
,以下操作哪个是不合法的?
A、s>
>
=1;
B、inti=s.length();
C、Stringts=s.trim();
D、Stringt=s+”!
”;
19.在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行(A
20.有程序片段如下,以下哪个表示式的结果为true?
Floats=newFloat(0.1f);
Floatt=newFloat(0.1f);
Doubleu=newDouble(0.1);
A、s==tB、s.equals(t)C、u.equals(s)D、t.equals(u)
21.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(B)个比特位。
A、8
B、16
C、32
D、64
22.以下哪项可能包含菜单条(B)。
A、PanelB、FrameC、AppletD、Dialog
23.paint()方法使用哪种类型的参数?
(A)
A、GraphicsB、Graphics2DC、StringD、Color
24.以下哪个方法用于定义线程的执行体?
(
A、start()B、init()C、run()D、synchronized()
25.当浏览器暂时离开含applet程序的页面时,以下选项中的哪个方法将被执行?
26.下面哪个不是Java中的容器?
(A
A、CanvasB、ScrollPaneC、AppletD、Dialog
27.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。
这种面向对象程序的特性称为(C)。
A、隐藏
B、覆盖
C、重载
D、Java不支持此特性
28.编译JavaApplet源程序文件产生的字节码文件的扩展名为(B
A、javaB、classC、html
D、exe
29.下面哪个方法与applet的显示无关?
A、draw()B、update()C、repaint()D、paint()
30.编译并运行以下程序,以下描述哪个选项是正确的(
1.classA{
2.protectedbooleanequals(){
3.returnsuper.equals();
31.以下自定义标识符中哪项是不合法的(
A、constB、$doubleC、helloD、BigMeaninglessName
32.有如下代码段:
1)
2){if(unsafe()){//dosomething…}
3)elseif(safe()){//dotheother…}
4)}
其中,方法unsafe()将抛出IOException,请问可将以下哪项填入第1行?
A、publicIOExceptionmethodName()
B、publicvoidmethodName()
C、publicvoidmethodName()throwIOException
D、publicvoidmethodName()throwsIOException
33.类Test1、Test2定义如下:
1.publicclassTest1
2.{publicfloataMethod(floata,floatb)throws
3.IOException{
}
publicclassTest2extendsTest1{
6.
7.}
将以下哪种方法插入行4是不合法的。
floataMethod(floata,floatb){}
publicintaMethod(inta,intb)throwsException{}
publicfloataMethod(floatp,floatq){}
publicintaMethod(inta,intb)throwsIOException{}
34.以下哪个接口的定义是正确的?
interfaceB
{voidprint(){};
abstractinterfaceB
{voidprint();
abstractinterfaceBextendsA1,A2//A1、A2为已定义的接口
{abstractvoidprint(){};
{voidprint();
35.下面哪个函数是publicvoidaMethod(){...}的重载函数?
A、voidaMethod(){...}
B、publicintaMethod(){...}
C、publicvoidaMethod(){...}
D、publicintaMethod(intm){...}
36.A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:
Aa0=newA();
Aa1=newB();
Aa2=newC();
问以下哪个说法是正确的?
D
A、只有第1行能通过编译
B、第1、2行能通过编译,但第3行编译出错
C、第1、2、3行能通过编译,但第2、3行运行时出错
D、第1行、第2行和第3行的声明都是正确的
37.假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?
classA
{inti;
staticStrings;
voidmethod1(){
staticvoidmethod2(){
A、System.out.println(a.i);
B、a.method1();
C、A.method1();
D、A.method2()
38.下列哪些语句关于Java内存回收的说明是正确的?
(B
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象
39.以下关于继承的叙述正确的是(
A)。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
40.在编写JavaApplet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上(D
1.以下哪个方法用于定义线程的执行体?
()
A.start()
B.init()
C.run()
2.paint()方法使用哪种类型的参数?
()
A.Graphics
B.Graphics2D
C.String
D.Color
3.以下哪项可能包含菜单条()
A.Panel
B.Frame
C.Applet
D.Dialog
4.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是()包。
A.java.io
B.java.awt
C.java.applet
D.java.awt.event
5.下列哪个属于容器的构件?
A.JFrame
B.JButton
C.JPnel
D.JApplet
6.以下哪个关键字可以用来对对象加互斥锁?
A.transient
B.serialize
C.synchronized
D.static
7.下面哪行是正确的?
A.<
jsp:
useBeanaction="
get"
id="
address"
property="
city"
/>
B.<
getPropertyid="
C.<
getPropertyname="
D.<
getPropertybean="
*"
8.下面哪个不是Java中的容器?
A.