Java程序设计习题集含答案.docx

上传人:b****6 文档编号:5362766 上传时间:2022-12-15 格式:DOCX 页数:37 大小:35.55KB
下载 相关 举报
Java程序设计习题集含答案.docx_第1页
第1页 / 共37页
Java程序设计习题集含答案.docx_第2页
第2页 / 共37页
Java程序设计习题集含答案.docx_第3页
第3页 / 共37页
Java程序设计习题集含答案.docx_第4页
第4页 / 共37页
Java程序设计习题集含答案.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

Java程序设计习题集含答案.docx

《Java程序设计习题集含答案.docx》由会员分享,可在线阅读,更多相关《Java程序设计习题集含答案.docx(37页珍藏版)》请在冰豆网上搜索。

Java程序设计习题集含答案.docx

Java程序设计习题集含答案

Java程序设计习题集

一、判断题

1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。

(F)

2.有的类定义时可以不定义构造函数,所以构造函数不是必需的。

(F)

3.类及其属性、方法可以同时有一个以上的修饰符来修饰。

(T)

4.Java的屏幕坐标是以像素为单位,容器的左下角被定为坐标的起点。

(F)(应该是左上角)

5.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。

(F)

6.Final类中的属性和方法都必须被final修饰符修饰。

(F)(静态的必须被静态的修饰符修饰)

7.最终类不能派生子类,最终方法不能被覆盖。

(T)

8.子类要调用父类的方法,必须使用super关键字。

(T)

9.一个Java类可以有多个父类。

(F)

10.如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。

(F)

11.一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。

(T)

12.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。

(T)

13.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。

(T)

14.用“+”可以实现字符串的拼接,用-可以从一个字符串中去除一个字符子串。

(F)

15.一个容器中可以混合使用多种布局策略。

(T)

16.一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。

(T)

17.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

(T)

18.JavaApplet是由独立的解释器程序来运行的。

(F)

19.JavaApplet只能在图形界面下工作。

(T)

20.Java的字符类型采用的是ASCII编码。

(F)

21.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。

(T)

22.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。

(F)

23、Java是不区分大小写的语言。

(F)

24、Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

(T)

25、JavaApplication是由独立的解释器程序来运行的。

(F)

26、JavaApplet的字节码文件必须嵌入HTML的文件中并由负责解释HTML文件的WWW浏览器充当解释器来解释运行。

(F)

27、JavaApplication只能在字符界面下工作。

(F)

28、Java的字符类型采用的是Unicode编码,每个Unicode码占16个比特。

(T)

29、Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是主类。

(T)

30、子类的域和方法的数目一定大于等于父类的域和方法的数目。

(F)

31、类在实现接口的方法时,必须显示地使用public修饰符。

(T)

32、一个类只能有一个父类,但一个接口可以有一个以上的父接口。

(T)

33、程序中抛出异常时(throw…),只能抛出自己定义的异常对象。

(F)

34、System类中的in是一个输入对象。

(T)

35、实现一个接口,则在类中一定要实现接口中的所有方法。

(T)

36、所有的文件输入/输出流都继承于InputStream类/OutputStream类。

(F)

37、一个异常处理中finally语句块只能有一个或者可以没有。

(F)

38、语句importjava.applet.Applet;最后的Applet是代表类(class)。

(T)

39、类体中private修饰的变量在本类中能访问,类生成的对象也能访问。

(F)

40、线程使用sleep()方法休眠后,可以用notify()方法唤醒。

(F)

41、一个异常处理中finally语句块只能有一个或者可以没有。

(T)

42、用Javac编译Java源文件后得到代码叫字节码。

(T)

43、数组、类和接口都是引用数据类型。

(F)

44、一个Applet编译后的类名是Test.class,运行此小程序的命令是JavaTest。

(F)

45、Java语言中一个Char类型的数据占用2个字节大小的内存空间。

(T)

46、编译语句DoubleaDouble=37.2D不会出现编译错误。

(F)

47、编译语句intaInt=66666不会出现编译错误。

(T)

48、判断下面说法的正误:

if(true){inti=17;}

System.out.println(i);

运行此程序的结果是输出17。

(F)

49、floatx=26f;inty=26;intz=x/y;以上语句能正常编译和运行。

(F)

50、判断下面说法的正误:

intx=9;if(x>8andx<10)System.out.println("true");以上语句运行的结果是显示true。

(T)

51、判断下面说法的正误:

Stringstr;System.out.println(str.length());以上语句运行的结果是显示0。

(F)

52、抽象类不能实例化。

(T)

53、一个方法最多能有一个return语句。

(F)

54、接口名可以作为方法返回值的类型。

(T)

55、类A和类B位于同一个包中,则除了私有成员,类A可以访问类B的所有其他成员。

(T)

二、选择题

1.编译JavaApplet源程序文件产生的字节码文件的扩展名为(B)。

A、javaB、classC、htmlD、exe

2.main方法是JavaApplication程序执行的入口点,关于main方法的方法头以下哪项是合法的(BC)?

A、publicstaticvoidmain()

B、publicstaticvoidmain(Stringargs[])

C、publicstaticintmain(String[]arg)

D、publicvoidmain(Stringarg[])

3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。

A、staticvoidmethod()B、publicvoidmethod()

C、finalvoidmethod()D、abstractvoidmethod()

4.下列哪个是合法的Java标识符?

(BC)

A、Tree&GlassesB、FirstJavaApplet

C、_$theLastOneD、273.5

5.JavaApplication源程序的主类是指包含有(A)方法的类。

A、main方法B、toString方法

C、init方法D、actionPerfromed方法

6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(B)个比特位。

A、8B、16C、32D、64

7.设a=8,则表达式a>>>2的值是(B)。

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

8.若a的值为3时,下列程序段被执行后,c的值是多少?

(C)

c=1;

if(a>0)if(a>3)c=2;elsec=3;elsec=4;

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

9.在编写JavaApplication程序时,若需要使用到标准输入输出语句,必须在程序的开头写上(C)语句。

A、importjava.awt.*;B、importjava.applet.Applet;

C、importjava.io.*;D、importjava.awt.Graphics;

10.对于构造函数,下列叙述正确的是(ACD)。

A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。

B、构造函数的返回类型只能是void型。

C、构造函数的主要作用是完成对类的对象的初始化工作。

D、一般在创建新对象时,系统会自动调用构造函数。

11.下面的是关于类及其修饰符的一些描述,正确的是:

(AD)。

A、abstract类只能用来派生子类,不能用来创建abstract类的对象。

B、final类不但可以用来派生子类,也可以用来创建final类的对象。

C、abstract不能与final同时修饰一个类。

D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。

12.若需要定义一个类域或类方法,应使用哪种修饰符?

(A)

A、staticB、packageC、privateD、public

13.若在某一个类定义中定义有如下的方法:

abstractvoidperformDial();

该方法属于(D)。

A、本地方法B、最终方法C、解态方法D、抽象方法

14.下列关于静态初始化器的叙述中,哪一个是正确的?

(B)

A、静态初始化器是在构造函数之前加上static修饰符。

B、静态初始化器是对类自身进行初始化。

C、静态初始化器在同一个类中只能有一个。

D、静态初始化器是在其所属的类加载内存时不是由系统自动调用执行。

15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?

(AB)

A、实例方法可以直接调用父类的实例方法。

B、实例方法可以直接调用父类的类方法。

C、实例方法可以直接调用其他类的实例方法。

D、实例方法不可以直接调用本类的类方法。

16.设有下面两个类的定义:

classPerson{}

classStudentextendsPerson{

longid;//身份证号

intscore;//入学总分

Stringname;//姓名

intgetScore(){returnscore;}

}

问:

类Person和类Student的关系是(B)。

A、包含关系B、继承关系

C、关联关系D、无关系,上述类定义有语法错误

17.设有下面的两个类定义:

classAA{

voidShow(){System.out.println(“我喜欢Java!

”);

}

classBBextendsAA{

voidShow(){System.out.println(“我喜欢C++!

”);

}

则顺序执行如下语句后输出结果为:

(A)

AAa;BBb;

a.Show();b.Show();

A、我喜欢Java!

B、我喜欢C++!

我喜欢C++!

我喜欢Java!

C、我喜欢Java!

D、我喜欢C++!

我喜欢Java!

我喜欢C++!

18.设有下面的一个类定义:

classAA{

staticvoidShow(){System.out.println(“我喜欢Java!

”);}

}

classBB{voidShow(){System.out.println(“我喜欢C++!

”);}}

若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:

(AC)

A、a.Show()B、AA.Show();

b.Show()BB.Show();

C、AA.Show();D、a.Show();

b.Show();BB.Show();

19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。

这种面向对象程序特性称为(C)。

A、隐藏B、覆盖C、重载D、Java不支持此特性

20.对于构造函数,下列叙述不正确的是(C)。

A、构造函数也允许重载。

B、子类无条件地继承父类的无参构造函数。

C、子类不允许调用父类的构造函数。

D、在同一个类中定义的重载构造函数可以相互调用。

21.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。

A、privateB、protected

C、privateprotectedD、public

22.设有下面两个赋值语句:

a=Integer.parseInt(“1024”);

b=Integer.valueOf(“1024”).intValue();

下述说法正确的是(D)。

A、a是整数类型变量,b是整数类对象。

B、a是整数类对象,b是整数类型变量。

C、a和b都是整数类对象并且它们的值相等。

D、a和b都是整数类型变量并且它们的值相等。

23.在JavaApplet程序用户自定义的Applet子类中,常常重载(D)方法在Applet的界面中显示文字、图形和其它界面元素。

A、start()B、stop()

C、init()D、paint()

24.在Java中,存放字符串常量的对象属于(B)类对象。

A、CharacterB、String

C、StringBufferD、Vector

25.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是(B)包。

A、java.ioB、java.awt

C、java.appletD、java.awt.event

26.在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用(C)类的对象来实现。

A、JLabelB、JButton

C、JTextAreaD、JTextField

27.创建一个标识有“关闭”按钮的语句是(D)。

A、JTextFieldb=newJTextField(“关闭”);

B、JLabelb=newJLabel(“关闭”);

C、JCheckboxb=newJCheckbox(“关闭”);

D、JButtonb=newJButton(“关闭”);

28.在编写异常处理的Java程序中,每个catch语句块都应该与(C)语句块对应,使得用该语句块来启动Java的异常处理机制。

A、if–elseB、switchC、tryD、throw

29.在编写JavaApplet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上(D)语句。

A、importjava.awt.*;B、importjava.applet.*;

C、importjava.io.*;D、importjava.awt.event.*;

30.对于子类的构造函数说明,下列叙述中不正确的是(BC)。

A、子类无条件地继承父类的无参构造函数。

B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。

C、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。

D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。

31.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?

(B)

A、ArrayListmyList=newObject();

B、ListmyList=newArrayList();

C、ArrayListmyList=newList();

D、ListmyList=newList();

32.paint()方法使用哪种类型的参数?

(A)

A、Graphics

B、Graphics2D

C、String

D、Color

33.指出正确的表达式(C)

A、byte=128;

B、Boolean=null;

C、longl=0xfffL;

D、double=0.9239d;

34.指出下列程序运行的结果(B)

publicclassExample{

Stringstr=newString("good");

char[]ch={'a','b','c'};

publicstaticvoidmain(Stringargs[]){

Exampleex=newExample();

ex.change(ex.str,ex.ch);

System.out.print(ex.str+"and");

Sytem.out.print(ex.ch);

}

publicvoidchange(Stringstr,charch[]){

str="testok";

ch[0]='g';

}

}

A、goodandabc

B、goodandgbc

C、testokandabc

D、testokandgbc

35.运行下列程序,会产生什么结果(B)

publicclassXextendsThreadimplementsRunable{

publicvoidrun(){

System.out.println("thisisrun()");

}

publicstaticvoidmain(Stringargs[])

{

Threadt=newThread(newX());

t.start();

}

}

A、第一行会产生编译错误

B、第六行会产生编译错误

C、第六行会产生运行错误

D、程序会运行和启动

36.要从文件"file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合?

(D)

A、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);intc=in.read();

B、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();

C、FileInputStreamin=newFileInputStream("file.dat");intc=in.read();

D、RandomAccessFilein=newRandomAccessFile("file.dat");in.skip(9);intc=in.readByte();

37.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?

(A)

A、CardLayout

B、FlowLayout

C、BorderLayout

D、GridLayout

38.给出下面代码:

publicclassPerson{

staticintarr[]=newint[10];

publicstaticvoidmain(Stringa[])

{

System.out.println(arr[1]);

}

}

那个语句是正确的?

(C)

A、编译时将产生错误;

B、编译时正确,运行时将产生错误;

C、输出零;

D、输出空。

39.哪个关键字可以对对象加互斥锁?

(B)

A、transient

Bsynchronized

Cserialize

Dstatic

40.下列哪些语句关于内存回收的说明是正确的?

(B)

A、程序员必须创建一个线程来释放内存;

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

41.下列代码哪几行会出错:

(C)

1)publicvoidmodify(){

2}intI,j,k;

3)I=100;

4)while(I>0){

5}j=I*2;

6)System.out.println("Thevalueofjis"+j);

7)k=k+1;

8)I--;

9)}

10}}

A、line4

B、line6

C、line7

D、line8

42.MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量。

(CD)

A、publicintMAX_LENGTH=100;

B、finalintMAX_LENGTH=100;

C、finalpublicintMAX_LENGTH=100;

D、publicfinalintMAX_LENGTH=100.

43.给出下面代码:

1)classParent{

2}privateStringname;

3}publicParent(){}

4}}

5)publicclassChildextendsParent{

6}privateStringdepartment;

7}publicChild(){}

8}publicStringgetValue(){returnname;}

9}publicstaticvoidmain(Stringarg[]){

10}Parentp=newParent();

11}}

12}}

那些行将引起错误?

(D)

A、第3行

B、第6行

C、第7行

D、第8行

44.类Teacher和Student是类Person的子类;

Personp;

Teachert;

Students;

//p,tandsareallnon-null.

if(tinstanceofPerson){s=(Student)t;}

最后一句语句的结果是:

(D)

A、将构造一个Student对象;

B、表达式是合法的;

C、表达式是错误的;

D、编译时正确,但运行时错误。

45.给出下面代码段

1)publicclassTest{

2}intm,n;

3}publicTest(){}

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

当前位置:首页 > 高等教育 > 其它

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

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