大工19秋《java程序设计》期末考试复习题.docx

上传人:b****9 文档编号:29130370 上传时间:2023-07-20 格式:DOCX 页数:30 大小:27.95KB
下载 相关 举报
大工19秋《java程序设计》期末考试复习题.docx_第1页
第1页 / 共30页
大工19秋《java程序设计》期末考试复习题.docx_第2页
第2页 / 共30页
大工19秋《java程序设计》期末考试复习题.docx_第3页
第3页 / 共30页
大工19秋《java程序设计》期末考试复习题.docx_第4页
第4页 / 共30页
大工19秋《java程序设计》期末考试复习题.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

大工19秋《java程序设计》期末考试复习题.docx

《大工19秋《java程序设计》期末考试复习题.docx》由会员分享,可在线阅读,更多相关《大工19秋《java程序设计》期末考试复习题.docx(30页珍藏版)》请在冰豆网上搜索。

大工19秋《java程序设计》期末考试复习题.docx

大工19秋《java程序设计》期末考试复习题

机密★启用前

大连理工大学网络教育学院

2019年秋《Java程序设计》

期末考试复习题

☆注意事项:

本复习题满分共:

400分。

一、单选题

1、关于可以独立运行的Java应用程序,下列说法哪个是正确的()?

A.无须main方法

B.必须有两个main方法

C.可以有多个或0个main方法

D.必须有一个main方法

2、Java创建一个对象使用的关键字是()。

A.class

B.interface

C.new

D.create

3、执行如下代码:

int[]x=newint[5];,以下哪项说明是正确的?

()

A.x[4]为0

B.x[4]未定义

C.x[5]为0

D.x[0]为空

4、用关键字abstract定义的类()。

A.可以被实例化

B.不能派生子类

C.不能被继承

D.只能被继承

5、假设对象x具有属性a,则访问该属性的方法是()。

A.a.x

B.a.x()

C.x.a

D.x.a()

6、下面是一个无修饰符的类:

classCar{...},则类Car()。

A.可被其他程序包中的类使用

B.仅能被本程序包中的类使用

C.不能被任何类使用

D.不能被其他类继承

7、构造方法在什么时候被调用()?

A.类定义时

B.使用对象的属性时

C.使用对象的方法时

D.对象被创建时

8、下列选项不允许作为类及类成员访问控制符的是()。

A.public

B.private

C.static

D.protected

9、表达式(short)(8/9.2*5)的值类型为()。

A.short

B.int

C.double

D.float

10、类B和类C都不是抽象类,并且类B是类C的父类。

下面声明对象x1的语句不正确的是()。

A.Bx1=newB()

C.Cx1=newC()

B.Bx1=newC()

D.Cx1=newB()

11、下列关于Java内部类的叙述错误的是()。

A.内嵌类型可以与外层类型同名

C.内部类中可以声明成员变量和成员方法

B.内部类可以声明为抽象类

D.内部类可以继承父类或实现接口

12、表达式:

(a>b)?

(c>d)?

a:

c:

d,(其中a=5,b=9,c=1,d=9)的值为()。

A.5

B.8

C.1

D.9

13、下列哪一个方法不是Applet生命周期相关的4个方法之一()。

A.init()

B.start()

C.wait()

D.stop()

14、下面的Java变量中,不属于复合类型的数据类型是()。

A.类

B.字符型

C.数组型

D.接口

15、Java中表示回车符的转义字符是()。

A.\t

B.\n

C.\r

D.\f

16、Java程序的执行过程中用到一套JDK工具,其中javac.exe是指()。

A.Java文档生成器

B.Java解释器

C.Java编译器

D.Java类分解器

17、定义一个名为“Car”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应该为()。

A.privateclassCarextendsObject

C.classCarextendsObject

B.publicclassCar

D.privateclassCar

18、当方法遇到异常又不知如何处理时,下列哪种说法是正确的()。

A.捕获异常

B.抛出异常

C.声明异常

D.嵌套异常

19、Java中的哪个类提供了随机访问文件的功能()。

A.RandomAccessFile类

C.RandomFile类

B.File类

D.AccessFile类

20、下列哪个Java标识符是合法的()。

A.new

B.class

C.int

D.const1

21、Java程序源文件和经编译后的文件扩展名分别是()。

A..class和.java

B..java和.class

C..class和.class

D..java和.java

22、Java中为了区别重载多态中同名的不同方法,要求()。

A.返回值类型相同

C.参数名称不同

B.采用不同的参数列表

D.以上三项都不对

23、下列语句中,()是不能通过编译的语句。

A.doubled=545.0;

B.chara1="c";

C.inti=321;

D.floatf1=45.0f;

24、Java中流的传递方式属于()。

A.并行的

B.串行的

C.并行和串行

D.以上都不对

25、Java程序设计语言中,JDBC指的是()。

A.Java程序与数据库连接的一种机制

B.Java程序与浏览器交互的一种机制

C.Java类库名称

D.Java类编译程序

26、Java程序设计语言中,关键字super的作用是()。

A.用来访问父类被隐藏的成员变量

B.用来调用父类中被重载的方法

C.用来调用父类的构造方法

D.以上都是

27、下列java标识符的书写,错误的是()。

A._sys

B.$change

C.user_name

D.1_file

28、Java中类实现的接口以及修饰不可以是()。

A.public

B.abstract

C.final

D.void

29、下列特性中,不属于面向对象编程的三大特征的是()。

A.封装

B.指针操作

C.多态

D.继承

30、执行如下语句序列,k的值是()。

intj=4,k=20;for(inti=1;i!

=j;i++)k=k-i;

A.10

B.24

C.12

D.14

31、Java源代码保存在扩展名为()的文件中。

A..exe

B..java

C..class

D..javac

32、调用alphabet.substring(6,10)返回的子字符串是()。

A."GHIJ"

B."FGHI"

C."HIJ"

D."GHI"

33、关于while和do…while语句的说法,错误的是()。

A.都是Java的循环语句

B.while语句至少迭代一次

C.do…while语句至少迭代一次

D.两者都可以迭代多次

34、int[]a;和int[]b=newint[0];关于这两个语句的说法错误的是()。

A.a为空数组

B.b不是空数组

C.a是分配了0个元素的数组

D.b是分配了0个元素的数组

35、下列关于Java中方法的说明,错误的是()。

A.方法调用必须指定方法名和实际参数

B.写在return后面的语句不会被执行

C.Java应用程序从main()方法开始执行

D.main()方法不能被其他方法调用,包括Java虚拟机

36、关于构造方法和方法的说法,错误的是()。

A.构造方法可以创建类的对象

B.构造方法和方法都有返回值类型

C.构造方法使用new操作符调用

D.方法使用句点操作符调用

37、下列类中,属于java.lang包中的类的是()。

A.Arrays类

B.Math类

C.Date类

D.Calendar类

38、下列关于方法修饰符的叙述,错误的是()。

A.final修饰的方法在类中可以被重载

C.native修饰的方法表示方法体是以另一种程序设计语言实现的

B.private修饰的方法指该方法只能从其自身的类中访问

D.protected修饰的方法指该方法只能从其自身的类及其扩展中访问

39、下列哪一项不属于java.awt中的布局管理器类()。

A.FlowLayout

B.TableLayout

C.BorderLayout

D.GridLayout

40、java.util包定义了3种一般类型的集合,下列哪一个不是()。

A.List

B.Map

C.Set

D.Hash

41、JApplet类的直接父类是()。

A.Component类

B.Container类

C.Applet类

D.Panel类

42、下列协议中哪一个不属于网络层协议()。

A.DNS

B.IP

C.ICMP

D.IGMP

43、下列属于文本数据流的是()。

A.源代码程序

B.音频

C.图像

D.视频

44、关于I/O类的说明,错误的是()。

A.I/O类主要有4种

B.InputStream和Reader类用于输入

C.OutputStream和Writer类用于输出

D.Reader和Writer类用于处理二进制文件

45、下列不属于JDBC提供的驱动程序的是()。

A.本地库Java实现驱动程序

B.网络协议驱动程序

C.数据库协议驱动程序

D.硬盘协议驱动程序

46、下面哪种类是用简单数组来实现的()。

A.HashSet

B.LinkedHashSet

C.TreeSet

D.TreeMap

47、下列关于Applet小程序的叙述正确的是()。

A.Applet可以独立运行

B.Applet小程序也必须有main()方法

C.Panel类是Applet类的子类

D.JApplet类是Applet类的子类

48、关于接口的说明,错误的是()。

A.接口可以包含嵌套类和接口

B.接口可以作为一种数据类型来声明变量和参数

C.接口可以扩展一个类

D.接口无构造函数

49、下列哪一个特性不是进程和线程所共有的()。

A.结构性

B.共享性

C.动态性

D.独立性

50、下列不可以正确表示Java标识符的是()。

A.$max

B.abc

C._min

D.public

单选题答案

1、D2、C3、A4、D5、C

6、B7、D8、C9、A10、D

11、A12、D13、C14、B15、C

16、C17、B18、C19、A20、D

21、B22、B23、B24、B25、A

26、D27、D28、D29、B30、D

31、B32、A33、B34、C35、D

36、B37、B38、A39、B40、D

41.C42.A43.A44.D45.D

46.A47.D48.C49.D50.D

二、判断题

1、JDK提供Java程序的编译运行命令和程序编辑环境。

()

2、Java中的int类型占用32位,这与操作系统的位数无关。

()

3、Java的数组都是动态数组,必须使用new为其分配空间。

()

4、参数列表和返回值的不同都可以独立决定方法重载。

()

5、子类继承父类,则继承了父类中所有的方法。

()

6、包含抽象方法的类必须声明为抽象类,但抽象类可以不包含抽象方法。

()

7、Calendar类可以用final修饰。

()

8、进程和线程都具有独立性。

()

9、Applet是可以嵌入Web页的最小应用,能独立运行。

()

10、FileInputStream类使用字节读取文件时可以直接操作Unicode字符。

()

11、Java应用程序的两种形式Application和Applet都可以独立运行。

()

12、Java提供3种注释方式,其中/**……*/是多行注释。

()

13、Java字符串可以用字符串变量操作,也可以用字符数组操作。

()

14、Java不支持结构和联合,类的功能就类似于结构和联合。

()

15、拷贝构造函数就是指一个类中参数是该类对象的构造方法。

()

16、在Java中,Object类是其他所有类的祖先类。

()

17、父类对象可以引用子类实例,子类对象也可以引用父类实例。

()

18、方法的重载都是编译时多态。

()

19、程序中所有的错误都是异常。

()

20、Arrays类的所有方法都是静态方法。

()

21、File类提供对文件的操作,其中通过流进行文件读写操作。

()

22、Java支持的UDP数据报通信需要DatagramPacket和DatagramSocket两个类配合。

()

23、构造函数可以用this和super关键字来调用其他的构造函数。

()

24、javax.swing.JLabel用于在窗口中显示文本。

()

25、在Java中,大多数的图形定义在java.awt包和javax.swing包中。

()

26、二进制文件是按16位字节来访问的,文本文件是按8位字符来访问的。

()

27、ArrayList对象作为Java集合框架的一个成员,支撑Collection接口的所有方法。

()

28、LinkedHashSet类和LinkedHashMap类是单用链式结构来实现的。

()

29、Java虚拟机是一种软件系统,它可以翻译和运行Java字节码。

()

30、编译器把源代码程序翻译成机器语言程序,解释器是在需要时才分别翻译并运行源代码的每个句子。

()

判断题答案

1.×2.√3.√4.×5.×

6.√7.×8.×9.×10.×

11.×12.×13.×14.√15.√

16.√17.×18.√19.×20.√

21.√22.√23.√24.√25.√

26.×27.√28.×29.√30.√

三、简答题

1、简述Java程序的可移植性。

(第一章,Java的特点)

与平台无关的特性使Java程序可以方便地被移植到网络上的不同机器。

同时,Java的类库中也实现了与不同平台的接口,使这些类库可以移植。

另外,Java编译器是由Java语言实现的,Java运行时系统由标准C实现,这使得Java系统本身也具有移植性。

Java的这种可移植性也许是Java最诱人的特点。

用Java开发成的系统其移植工作几乎为0,一般情况下只需对配置文件、批处理文件做相应的修改即可实现平滑移植。

2、抽象类和抽象方法有什么特点?

(第三章,类的抽象性)

一个抽象类里面可以没有抽象方法,但含有抽象方法的类必定是抽象类;抽象类不能被实例化为对象,而只能作为其他类的超类,并且必须被继承;若某子类继承自一个抽象类,而该子类不是抽象类,则子类需要覆盖的方式来实例化超类中的所有抽象方法。

抽象方法可再与public、protected复合使用,但不能与final、private和static复合使用;抽象方法只有方法声明,不能有方法体。

3、什么是异常?

为什么要进行异常处理?

(第五章,异常处理)

异常,是指由于程序运行时发生错误,从而导致程序错误结束。

在进行程序设计时,错误的产生是不可避免的,没有异常处理代码的程序,在运行时发生错误则可能非正常结束,引起严重问题。

因此,Java给程序员提供了处理运行时错误的功能,称为异常处理。

4、String类和StringBuffer类的主要区别是什么?

(第四章,String字符串类)

String类:

用于比较两个字符串,查找和抽取串中的字符或子串,字符串与其他类型的转换等,String类对象的内容一旦被初始化就不能再改变。

StringBuffer类:

用于内容可以改变的字符串,可以将其他各种类型的数据增加、插入到字符串中,也可以翻转字符串中原来的内容。

5、为什么用一个静态方法去调用一个非静态方法是不合法的?

(第三章,静态成员和静态方法)

静态方法没有绑定到任何特定的对象上,它没有隐式参数。

因此,在静态方法中,没有隐式对象供非静态方法可绑定。

6、什么是JDK?

(第一章,Java的JDK)

缩写词JDK表示的是“JavaDevelopmentKit”。

它描述的是从SunMicrosystems公司网站下载的用来开发Java应用程序的文件集。

它包括了Java编译器和JavaAPI。

7、对象的相等性与指向对象的引用的相等性之间有何不同?

(第三章,类和对象)

如果两个对象具有相同的数值,那么这两个对象应该是相等的。

如果两个引用指向的是同一对象,那么这两个引用是相等的。

条件(p==q)可用于测试引用p和q的相等性,但不能测试它们所引用的对象的相等性。

你可以声明一个方法equals()来测试对象的相等性。

8、空数组和长度为0的数组有何不同?

并举例说明。

(第四章,java.util中数组类)

空数组就是还没有分配存储空间的数组。

长度为0的数组就是分配了0个元素的数组。

在下面两个声明中:

int[]a;//null

int[]b=newint[0];//notnull

a[]是一个空数组,b[]是一个长度为0的数组。

空数组a[]没有长度,已分配存储空间的数组b[]的长度为0。

四、读程序题(程序题考查的知识是Java程序设计的综合编程能力)

1、读下面程序,写出程序的运行结果

publicclassT1

{

publicstaticvoidmain(String[]args)

{

T1a=newT1();

a.method(8);

a.method(1.2f);

}

voidmethod(floati)

{

System.out.println("float:

"+i);

}

voidmethod(longi)

{

System.out.println("long:

"+i);

}

}

答案

long:

8

float:

1.2

2、定义类A和类B如下:

classA

{

inta=1;

doubled=2.0;

voidshow()

{

System.out.println("ClassA:

a="+a+"\td="+d);

}

}

classBextendsA

{

floata=3.0f;

Stringd="Javaprogram";

voidshow()

{

super.show();

System.out.println("ClassB:

a="+a+"\td="+d);

}

}

若在应用程序的main()方法中有以下语句:

Aa=newA();a.show();

则输出结果如何?

答案

classA:

a=1d=2.0

3、下面程序段的运行结果是什么?

publicclasstest

{

staticStrings1=newString("Test");

staticStrings2=newString("Test");

publicstaticvoidmain(String[]args)

{

if(s1==s2)

System.out.println("Same");

if(s1.equals(s2))

System.out.println("Equals");

}

}

答案

Equals

4、分析下面程序的运行结果。

publicclassFather{

voidspeak()

{

System.out.println("Iamfather!

");

}

voidspeak(Strings)

{

System.out.println("Ilike"+""+s+".");

}

publicstaticvoidmain(Stringargs[])

{

Fatherx=newFather();

x.speak();

x.speak("father");

}

}

答案

Iamfather!

Ilikefather.

5、分析下面程序的运行结果。

publicclassTest{

staticvoidthrowProcess()

{

try

{

thrownewNullPointerException("空指针异常");

}

catch(NullPointerExceptione)

{

System.out.println("\n在throwProcess方法中捕获一个"+e.getMessage());

throwe;

}

}

publicstaticvoidmain(Stringargs[])

{

try

{

throwProcess();

}

catch(NullPointerExceptione)

{

System.out.println("再次捕获:

"+e);

}

}

}

答案

在throwProcess方法中捕获一个空指针异常

再次捕获:

java.lang.NullPointerException:

空指针异常

6、读下面程序,写出程序的运行结果

publicclasstest1

{

publicstaticvoidmain(String[]args)

{

Strings1="ABC";

Strings2="ABC";

System.out.println("s2==s1:

"+(s2==s1));

Strings3=newString("ABC");

System.out.println("s3==s2:

"+(s3==s2));

Strings4=newString("ABC");

System.out.println("s4==s3:

"+(s4==s3));

}

}

答案

s2==s1:

true

s3==s2:

false

s4==s3:

false

7、读下面程序,写出程序的运行结果

publicclasstest1

{

publicstaticvoidmain(String[]args)

{

Stringstr="ThisistheMississippiRiver.";

System.out.println(str);

inti=str.indexOf('s');

System.out.println("Thefirstindexof's'is"+i);

i=str.indexOf('s',i+1);

System.out.println("Thenextindexof's'is"+i);

}

}

答案

ThisistheMississippiRiver.

Thefirstindexof's'is3

Thenextindexof's'is6

8、读下面程序,写出程序的运行结果

publicclasstest1

{

publicstaticvoidmain(String[]args)

{

Object[]a=newObject[3];

a[0]=newjava.util.Date();

a[1]="ABCDE";

print(a);

}

publicstaticvoidprint(Object[]a)

{

for(inti=0;i

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

当前位置:首页 > 工作范文 > 其它

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

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