java题库.docx

上传人:b****9 文档编号:25234504 上传时间:2023-06-06 格式:DOCX 页数:68 大小:47.13KB
下载 相关 举报
java题库.docx_第1页
第1页 / 共68页
java题库.docx_第2页
第2页 / 共68页
java题库.docx_第3页
第3页 / 共68页
java题库.docx_第4页
第4页 / 共68页
java题库.docx_第5页
第5页 / 共68页
点击查看更多>>
下载资源
资源描述

java题库.docx

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

java题库.docx

java题库

六、简答题

1、当塑型前和塑型后的类中都提供了相同的方法,并将此方法发送给塑型后的对象,系统将会调用哪一个类中的方法?

答:

对实例方法,总是从对象创建时所属的类开始,沿类层次向上查找。

对类方法,查找在编译时进行,所以总是在引用变量声明时所属的类中进行查找。

2、简述JDBC的功能?

试题答案:

JDBC是为java语言定义的一个SQL调用级接口。

JDBC使开发人员能够用纯javaAPI来编写数据库应用程序。

JDBC隔离了java与不同数据库之间的对话,使得java程序无须考虑不同的数据库管理系统平台。

3、简述synchronized的功能?

试题答案:

首先判断对象的锁旗标是否在,如果在就获得锁旗标,然后就可以执行紧随其后的代码段;如果对象的锁旗标不在,就进入等待状态,直到获得锁旗标。

4、简述java程序编译执行过程?

试题答案:

首先把源文件编译成字节码文件,即类文件;然后由解释器负责解释执行类文件。

5、试述哈希表存储对象的方式与数组、Vector及ArrayList不同?

试题答案:

1)数组,Vector及ArrayList中对象的存储位置是随机的,即对象本身与其存储位置之间没有必然的联系。

因此查找一个对象时,只能以某种顺序(如顺序查找,二分查找)与各个元素进行比较,如果数组或向量中的元素数量很庞大时,查找的效率必然降低

2)哈希表中,对象的存储位置和对象的关键属性k之间有一个特定的对应关系f,我们称之为哈希(Hash)函数。

它使每个对象与一个唯一的存储位置相对应。

因而在查找时,只要根据待查对象的关键属性k,计算f(k)的值即可知其存储位置

6、抽象基类与接口的异同点?

试题答案

1)相同点

a都可以被继承。

b本身都不能被实例化

2)不同点

a抽象类是一个不完整的类,需要进一步细化;而接口只是一个行为上的规范。

b抽象基类不能实现多继承,而接口可以实现多继承。

c抽象基类可以定义字段、属性、包含有实现的方法。

接口可以定义字段、索引器、事件但不能定义字段和包含实现的方法。

7、试述哈希表存储对象的方式与数组、Vector及ArrayList不同?

试题答案:

1)数组,Vector及ArrayList中对象的存储位置是随机的,即对象本身与其存储位置之间没有必然的联系。

因此查找一个对象时,只能以某种顺序(如顺序查找,二分查找)与各个元素进行比较,如果数组或向量中的元素数量很庞大时,查找的效率必然降低

2)哈希表中,对象的存储位置和对象的关键属性k之间有一个特定的对应关系f,我们称之为哈希(Hash)函数。

它使每个对象与一个唯一的存储位置相对应。

因而在查找时,只要根据待查对象的关键属性k,计算f(k)的值即可知其存储位置

8、抽象基类与接口的异同点?

试题答案答:

1)相同点a都可以被继承。

b本身都不能被实例化

2)不同点a抽象类是一个不完整的类,需要进一步细化;而接口只是一个行为上的规范。

b抽象基类不能实现多继承,而接口可以实现多继承。

c抽象基类可以定义字段、属性、包含有实现的方法。

接口可以定义字段、索引器、事件但不能定义字段和包含实现的方法。

9、什么是线程的生命期?

它包括哪几种状态?

试题答案:

线程的生命期是指从线程被创建开始到死亡的过程,通常包括5种状态:

新建、就绪、运行、阻塞、死亡。

10、什么是继承?

继承的意义?

如何定义继承关系?

试题答案:

继承是一种由已有的类创建新类的机制。

通过继承可以实现代码的复用,使程序的复杂性线性地增长,而不是随规模增大呈几何级数增长。

由于父类代表了所有子类的共性,而子类既可继承其父类的共性,又可以具有本身独特的个性,在定义子类时,只要定义它本身所特有的属性与方法就可以了。

一、选择题

1.列代码的输出结果是(A)

classyou{

publicstaticvoidmain(String[]args){

intsales=3500;

intprofit=800;

System.out.println(((sales+profit)/10)*5);

}

}

A.2150B.1250C.5210D.2510

2.在Java中,byte数据类型的范围是(D)

A.-32767~32768B.-32768~32767C.-127~128D.-128~127

3.Java源代码文件的扩展名为(B)

A..classB..javaC..comD.以上所有选项都不正确

4..Java编译器会将Java程序转换为(A)

A.字节码B.可执行代码C.机器代码D.以上所有选项都不正确

5.在屏幕上显示的消息正确的语句是(A)

A.System.out.println(“IamJavaExpert”);B.system.out.println(“IamJavaExpert”);

C.System.Out.Println(“IamJavaExpert”);D.System.out.println(‘IamJavaExpert’);

6.下面(A)数据类型可用于main()方法中传递的参数

A.StringB.IntegerC.BooleanD.Variant

7.下面(B)命令可用于编译Java程序

A.javaB.javacC.appletviewerD.javadoc

8.编译并运行以下程序,以下描述哪个选项是正确的(C)。

1.classATestOftoString{

2.protectedStringtoString(){

3.returnsuper.toString();}

4.}

A、编译通过运行无异常B、编译通过但运行时出错

C、行2出错,不能成功编译D、不能成功编译,行3出错

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.设有下面两个赋值语句:

a=Double.parseDouble(“1.2”);

b=Double.valueOf(“1.2”);

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

A、a是double类型变量,b是Double类对象。

B、a是Double类对象,b是double类型变量。

C、a和b都是Double类对象并且值相等

D、a和b都是double变量并且值相等

11.容器Panel和Applet缺省使用的布局编辑策略是(A)

A、FlowLayoutB、BorderLayoutC、GridLayoutD、CardLayout

12.在编写JavaApplet程序时,需要在程序的开头写上(B)语句。

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

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

13.以下哪个关键字可以用来对对象加互斥锁?

(C)

A、transientB、serializeC、synchronizedD、static

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

classPerson{

classStudentextendsPerson{

longid;//身份证号

intscore;//入学总分

Stringname;//姓名

intgetScore(){returnscore;}

}

}

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

A、包含关系B、继承关系C、关联关系D、上述类定义有语法错误

15..有以下方法的定义,请选择该方法的返回类型(D)。

ReturnTypemethod(bytex,floaty)

{return(short)x/y*2;}

A、byteB、shortC、intD、float

16.Javaapplication中的主类需包含main方法,main方法的返回类型是什么?

(D)

A、intB、floatC、doubleD、void

17.在浏览器中执行applet程序,以下选项中的哪个方法将被最后执行(C)。

A、init()B、start()C、destroy()D、stop()

18.不论测试条件是什么,下列(B)循环将至少执行一次。

A、whileB、do-whileC、forD、for-each

19.在JAVA编程中,(A)可以实现跳转结构。

A、breakB、whileC、do-whileD、for

20.JAVA程序中,(D)不能用来表示注释。

A、//注释B、/*注释*/C、/**注释*/D、/注释/

21.JAVA线程编程中,如果让线程睡眠,可以用(D)方法实现。

A、start()B、close();C、setDaemon();D、sleep();

22.在JAVASWING编程中,创建一个窗体使用组件(A)。

A、JFrameB、INTC、CHARD、LONG

23.JAVA中,按下和释放鼠标按钮的操作处理(D)事件。

A、mouseEnterdB、mouseExitiedC、mousePressedD、mouseClicked

24.字符流与字节流的区别是( A )

A、每次读入的字节数不同B、前者带有缓冲,后者没有

C、前者是块读写,后者是字节读写D、二者没有区别,可以互换使用

25.在JAVA中,类Worker是类Person的子类,Worker的构造方法中有一句“super()“,该语句(C)。

A、调用类Worker中定义的super()方法B、调用类Person中定义的super()方法

C、调用类Person中定义的super()方法D、语法错误

26.下列说法不正确的是(C)

A、IOException必须被捕获或抛出B、java语言会自动初始化变量的值

C、java语言不允许同时继承一个类并实现一个接口D、java语言会自动回收内存中的垃圾

27.在Java中,可以使线程运行的方法是(C)

A、init()B、sleep()C、start()D、resume()

28.如果希望所有的控件在界面上均匀排列,应使用下(B)布局管理器

A、BoxLayoutB、GridLayoutC、BorderLayoutD、FlowLayout

29.在JAVA编程中,以下(B)命令用来执行java类文件。

A、javacB、javaC、appletviewerD、以上所有选项都不正确

30.在JAVA编程中,Java编译器会将java程序转换为(A)。

A、字节码B、可执行代码C、机器代码D、以上所有选项都不正确

31.在Java中,关键字(A)使类不能派生出子类。

A、finalB、publicC、privateD、volatile

32.在JAVA语言中,使我们能够使用和更改字体来显示或键入文本的类是(A)

A、Java.awt.FontB、Java.awt.Graphics.FontC、Java.Graphics.FontD、Java.Font

33.下列选项中,属于Java语言的关键字的是(C)。

A、sizeofB、mallocC、caseD、FALSE

34.在Java语言中,如果你有下面的类定义:

abstractclassShape{abstractvoiddraw();}

classSquareextendsShape{}

如果你试图编译上面的代码会发生(D)。

A、Shape可以编译B、Square不能编译

C、Square可以编译Shape不能编译D、Shape,Square都不能编译

35.测试文件是否存在可以采用如下哪一个方法(D)。

A、isFile()B、isFiles()C、exist()D、exists()。

36.以下叙述中不正确的是(B)。

A、在方法中,通过return语句传回方法值

B、在一个方法中,可以执行有多条return语句,并返回多个值

C、在Java中,主方法main()后的一对圆括号中也可以带有参数

D、在Java中,调用方法可以在System.out.println()语句中完成

37.Java语言是(D)

A、面向问题的解释型高级编程语言B、面向机器的低级编程语言

C、面向过程的编译型高级编程语言D、面向对象的解释型高级编程语言

38.以下(AB)是合法的标识符

A.Te1_numB.emp1C.8678D.batch.no

39.选出在Java中有效的注释声明(AD)

A.//ThisisacommentB.*/Thisisacomment

C./ThisisacommentD./*Thisisacomment*/

40.下面(AC)是JDK中的Java运行工具.(选择二项)

A.javacB.javamC.javaD.javar

二、填空

1.使用__________布局的容器可以容纳多个组件,但实际上同一时刻容器只能从这些组件中选出一个来显示。

CardLayout

2.____________是使用较多的布局编辑器,其基本布局策略是把容器划分成若干行乘若干列的网格区域,组件就位于这些划分出来的小格中。

GridLayout

3.FlowLayout、GridLayout、BordrLayout布局对象都可以使用方法setVgap(intvgap)设置当前布局中组件的_____________。

垂直间距

4.FlowLayout、GridLayout、BordrLayout布局对象都可以使用方法setHgap(inthgap)设置当前布局中组件的_____________。

水平间距

5.Java.awt包中的____________类是专门用来建立选择框的。

CheckBox

6.在CheckBox类中,____________方法是用来获取选择框的标题。

getLabel

7.在CheckBox类中,___________方法是用来返回选择框的布尔状态。

GetState()

8.Java.awt包中的____________类是专门用来建立选择控件的。

Choice

9.Choice类中的______________方法,是用来返回当前项的索引。

getSelectIndex()

10.Choice类中的______________方法,是用来返回当前选项的字符串代表。

getSelctItem()

11.Choice类中的_____________方法,是用来将选项插入这个选择控件的指定位置。

insert(Stringint)

12.Choice类中的_____________方法,是用来从选择控件的选项菜单中删除指定的选项。

remove(int)

13.Choice类中的_____________方法,是用来删除选择控件中的全部选项。

removeAll()

14.Choice类中的_____________方法,是用来移去选择控件的监视器。

removeItemListener(ItemListener)

15.Java.awt包中的类___________类是专门用来建立滚动列表。

List

16.List类中的___________方法,是向滚动列表的结尾增加一个选项。

add(Strings)

17.List类中的___________方法,是增加监视器,监视滚动列表上的选择事件。

AddActionListener(ActionListener)

18.List类中的___________方法,是向滚动列表的给定位置增加一个选项。

add(Strings,intn)

19.List类中的___________方法,是增加监视器,监视滚动列表上的选择事件。

addItemListener(ItemListener)

20.在组件类的一些常用方法中____________方法是设置组件的前景颜色。

voidsetForeground(Colorc)

21.在组件类的一些常用方法中____________方法是设置组件的字体。

voidsetFont(Fontf)

22.Java的java.awt包中的_____________类或子类所创建的一个对象就是一个窗口。

Frame

23.Java中如果想给一个窗口起个名字,需使用方法super(Strings)调用父类的___________方法来完成这个任务。

构造

24.Java中Frame类的___________方法是用来获取窗口的名字。

getTitle

25.在JavaApplet小程序中创建了窗口后,窗口就可以放大、缩小、____________等。

移动

26.在设计程序时,可以不让创建的窗口一开始就可见,而是在程序中设计按钮___________,需要时,单击按钮调出所需的窗口。

事件

27.Frame类创建的对象是一个窗口容器,它默认布局是___________布局。

BorderLayout

28.Java.awt包中的Menubar类是负责创建_____________的,它的一个实例就是一个菜单条。

菜单条

29.创建一个菜单时,菜单放在菜单条里,____________放在菜单里。

菜单选项

30.在窗口中增加菜单条,必须使用___________类中的方法:

setMenuBar(Menubar)。

Frame

31.Java.awt包中的____________类是负责创建菜单的。

它的一个实例就是一个菜单。

Menu

32.在Menu类的方法中,___________方法是向菜单增加指定的选项。

add(Strings)

33.在Menu类的方法中,___________方法是得到指定索引处的选项。

getItem(intn)

34.在Menu类的方法中,__________方法是得到菜单选项的数目。

getItemCount()

35.在Menu类的方法中,___________方法是删除菜单的指定位置的菜单选项。

remove(intn)

36.在Menu类的方法中,___________方法是删除菜单的所有选项。

removeAll()

37.Java.awt包中的___________类是负责创建菜单项的,它的一个实例就是一个菜单项。

MenuItem

38.Java中要增加菜单分割线,只需使用Menu类中的____________方法。

addSeparator()

39.用MenuItem创建菜单项,如果想在选择这个菜单项时出现一个对号标记,可以用_____________类创建这个菜单项。

CheckboxMenuItem

40.菜单本身还可以是一个菜单,这样的菜单项称为____________。

子菜单

41.可以使用MenuShotcut类为菜单项设置____________,该类的一个构造方法是MenuShotcut(intkey)。

快捷键

42.可以在java应用程序中打印,首先获得一个PringJob对象,它是java.awt包中的一个abstract类,我们不能用它____________。

直接创建对象

43.java.awt.datatransfer包提供的类只能实现将程序中的___________数据复制或剪切到系统剪贴板中。

字符串

44.Java中如果准备将文本数据复制或剪切到系统剪贴板,必须首先使用___________类声明一个剪贴板对象。

Clipboard

45.Java中通过扩展___________类来创建一个对话框。

Dialog

46.___________可以接受用户的输入,实现与用户的交互。

对话框

47.对话框与一般窗口的区别在于它必须___________于其他窗口。

依赖

48.对话框分为两种,____________对话框只让程序响应对话框内部的事件,对于对话框以外的事件程序不响应。

有模式

49.对话框分为两种,____________对话框不但让程序响应对话框内部的事件,还可响应对话框以外的事件程序。

无模式

50.在对话框类Dialog中的方法__________是获取对话框的标题。

getTitle()

51.在对话框类Dialog中的方法setTitle(Strings)的作用是设置对话框的___________。

标题

52.在对话框类Dialog中的方法setModal(boolean)的作用是设置对话框的___________。

模式

53.在对话框类Dialog中的方法__________是设置对话框的大小。

setSize()

54.对话框的默认布局是____________布局,在创建对话框时必须有对话框大小的设置。

BorderLayout

55.__________是Dialog类的子类,它创建的对象称为文件对话框。

FileDialog

56.文件对话框也必须依附一个___________对象。

窗口

57.FileDialog是Dialog类的子类,它创建的对象称为__________。

文件对话框

58.JavaApplet小程序窗口的原点是窗口左上角,坐标的单位是__________。

像素

59.java.awt包中的___________类有很多处理图形的方法,供该类创建的对象使用。

Graphics

60.在JavaApplet小程序中,可以使用__________方法在屏幕上显示串对象。

drawString()

61.在JavaApplet小程序中,可以使用___________方法显示字符数组。

drawChars()

62.为了在小程序窗口中画一条直线,可以使用Graphics类的__________方法。

drawLine()

63.在JavaApplet小程序中画圆环,可以使用Graphics类的___________方法。

drawRoundRect()

64.在JavaApplet小程序中,Graphics类的对象g可以使用Graphics类的___

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

当前位置:首页 > 农林牧渔 > 农学

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

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