《JAVA程序设计》期末考试试题.docx

上传人:b****5 文档编号:7850525 上传时间:2023-01-26 格式:DOCX 页数:9 大小:17.82KB
下载 相关 举报
《JAVA程序设计》期末考试试题.docx_第1页
第1页 / 共9页
《JAVA程序设计》期末考试试题.docx_第2页
第2页 / 共9页
《JAVA程序设计》期末考试试题.docx_第3页
第3页 / 共9页
《JAVA程序设计》期末考试试题.docx_第4页
第4页 / 共9页
《JAVA程序设计》期末考试试题.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

《JAVA程序设计》期末考试试题.docx

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

《JAVA程序设计》期末考试试题.docx

《JAVA程序设计》期末考试试题

《JAVA程序设计》期末考试试题(六

一、填空题

1.定义类的保留字是(class,定义接口的保留字是(interface。

2.Socket通常也称为(套接字,用于描述(IP地址和(端口。

3.线程的优先级在(1至(10之间,数值越大(任务越紧急。

4.构造方法是一种特殊的成员方法,构造方法名与(类名相同。

5.Java语言只允许单继承,指每个类只能有一个(父类。

6.Java源程序的扩展名是(.java,经过编译后的程序的扩展名是(.class。

7.在一个时间只能由一个线程访问的资源称为(临界资源。

访问临界资源的代码(临界代码。

8.在多线程系统中,多个线程之间有(同步和(互斥两种关系。

二、选择题

1.关于选择结构下列哪个说法正确?

(B

A.if语句和else语句必须成对出现

B.if语句可以没有else语句对应

C.switch结构中每个case语句中必须用break语句

D.switch结构中必须有default语句

2.while循环和do…while循环的区别是:

(D

A.没有区别,这两个结构任何情况下效果一样

B.while循环比do…while循环执行效率高

C.while循环是先循环后判断,所以循环体至少被执行一次

D.do…while循环是先循环后判断,所以循环体至少被执行一次

3.关于for循环和while循环的说法哪个正确?

(B

A.while循环先判断后执行,for循环先执行后判断。

B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果

C.两种循环任何时候都不可以替换

D.两种循环结构中都必须有循环体,循环体不能为空

4.下列修饰符中与访问控制无关的是(D

A.private

B.public

C.protected

D.final

5.void的含义:

(A

A.方法没有返回值

B.方法体为空

C.没有意义

D.定义方法时必须使用

6.return语句:

(C

A.只能让方法返回数值

B.方法都必须含有

C.方法中可以有多句return

D.不能用来返回对象

7.关于对象成员占用内存的说法哪个正确?

(B

A.同一个类的对象共用同一段内存

B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间

C.对象的方法不占用内存

D.以上都不对

8下列说法哪个正确?

(C

A.不需要定义类,就能创建对象

B.对象中必须有属性和方法

C.属性可以是简单变量,也可以是一个对象

D、属性必须是简单变量

9.下列说法哪个正确?

(A

A、一个程序可以包含多个源文件

B、一个源文件中只能有一个类

C、一个源文件中可以有多个公共类

D、一个源文件只能供一个程序使用

10.关于方法main(的说法哪个正确?

(C

A.方法main(只能放在公共类中

Bmain(的头定义可以根据情况任意更改

C.一个类中可以没有main(方法

D.所有对象的创建都必须放在main(方法中

11.构造函数何时被调用?

(A

A、创建对象时

B、类定义时

C、使用对象的方法时

D、使用对象的属性时

12.抽象方法:

(C

A、可以有方法体

B、可以出现在非抽象类中

C、是没有方法体的方法

D、抽象类中的方法都是抽象方法

13.关于继承的说法正确的是:

(B

A、子类将继承父类所有的属性和方法。

B、子类将继承父类的非私有属性和方法。

C、子类只继承父类public方法和属性

D、子类只继承父类的方法,而不继承属性

14.关于构造函数的说法哪个正确?

(C

A、一个类只能有一个构造函数

B、一个类可以有多个不同名的构造函数

C、构造函数与类同名

D、构造函数必须自己定义,不能使用父类的构造函数

15.this和super:

(C

A、都可以用在main(方法中

B、都是指一个内存地址

C、不能用在main(方法中

D、意义相同

16.关于super的说法正确的是:

(B

A、是指当前对象的内存地址

B、是指当前对象的父类对象的内存地址

C、是指当前对象的父类

D、可以用在main(方法中

17.覆盖与重载的关系是(A

A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中

B.覆盖方法可以不同名,而重载方法必须同名

C.final修饰的方法可以被覆盖,但不能被重载

D.覆盖与重载是同一回事

18.关于接口哪个正确?

(A

A、实现一个接口必须实现接口的所有方法

B.一个类只能实现一个接口

C.接口间不能有继承关系

D.接口和抽象类是同一回事

19.异常包含下列哪些内容?

(A

A.程序执行过程中遇到的事先没有预料到的情况

B.程序中的语法错误

C.程序的编译错误

D.以上都是

20.对于已经被定义过可能抛出异常的语句,在编程时:

(A

A、必须使用try/catch语句处理异常,或用throws将其抛出

B.如果程序错误,必须使用try/catch语句处理异常

C.可以置之不理

D.只能使用try/catch语句处理

21.字符流与字节流的区别在于(D

A.前者带有缓冲,后者没有

B.前者是块读写,后者是字节读写

C.二者没有区别,可以互换使用

D.每次读写的字节数不同

22.下列流中哪个不属于字节流(D

A.FileInputStream

B.BufferedInputStream

C.FilterInputStream

D.InputStreamReader

三、程序填空题

1.publicclassSum{

publicstaticvoidmain(String[]args{

intj=10;

System.out.println("jis:

"+j;

calculate(j;

System.out.println("Atlast,jis:

"+j;

}

staticvoidcalculate(intj{

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

j++;

System.out.println("jincalculate(is:

"+j;

}

}

输出结果为:

jis:

(1

jincalculate(is:

(2

Atlastjis:

(3

答案:

(110;(220;(310。

2.按要求填空

abstractclassSuperAbstract{

voida({…}

abstractvoidb(;

abstractintc(inti;

}

interfaceAsSuper

{

voidx(;

}

abstractclassSubAbstractextendsSuperAbstractimplementsAsSuper

{

publicvoidb({…}

abstractStringf(;

}

publicclassInheritAbstractextendsSubAbstract{publicvoidx({…}

publicintc(inti{…}

publicStringf({…}

publicstaticvoidmain(Stringargs[]{

InheritAbstractinstance=newInheritAbstract(;

instance.x(;

instance.a(;

instance.b(;

instance.c(100;

System.out.println(instance.f(;

}

}

在以上这段程序中:

抽象类有:

SuperAbstract和(1(写出类名非抽象类有:

(2(写出类名接口有:

(3(写出接口名

AsSuper中的x(方法是(4方法,所以在InheritAbstract中必须对它进行(5

答案:

(1SuperAbstract;

(2InheritAbstract;

(3AsSuper;

(4抽象;

(5覆盖和实现。

3.按注释完成程序

publicclassLeaf{

privateinti=0;//此属性值用于检验

Leafincrement({//定义方法increment(,返回值是Leaf类的对象

i++;

return(1;//将当前对象的地址作为返回值返回

}

voidprint({

System.out.println("i="+i;

}

publicstaticvoidmain(Stringargs[]{

Leafx=(2;//创建Leaf类的对象x

x.increment(.increment(.increment(.print(;

}//多次调用方法increment(,返回的都是x的地址,i值表示调用次数

}

输出结果为i=(3

答案:

(1this;

(2newLeaf(;

(33

4.按注释提示完成文件复制的程序

//FileStream源代码如下:

importjava.io.*;

classFileStream{

publicstaticvoidmain(Stringargs[]{

try{

FileinFile=newFile("file1.txt";//指定源文件

FileoutFile=newFile("file2.txt";//指定目标文件

FileInputStreamfis=(1;

FileOutputStreamfos=newFileOutputStream(outFile;

intc;

//逐字节从源文件中输入,再输出到fos流

while((c=fis.read(!

=-1

(2;

fis.close(;

fos.close(;

}

catch(Exceptione{

System.out.println("FileStreamsTest:

"+e;

}

}

}

答案:

(1newFileInputStream(inFile;

(2fos.write(c;

5.阅读程序,给出结果:

//AbstractClassDemo.java源代码如下:

abstractclassShape{//定义抽象类Shape和抽象方法display

abstractvoiddisplay(;

}

classCircleextendsShape{

voiddisplay({//实现抽象类的方法

System.out.println("Circle";

}

}

classRectangleextendsShape{

voiddisplay({//实现抽象类的方法

System.out.println("Rectangle";

}

}

classTriangleextendsShape{

voiddisplay({//实现抽象类的方法

System.out.println("Triangle";

}

}

publicclassAbstractClassDemo{

publicstaticvoidmain(Stringargs[]{

(newCircle(.display(;//定义无名对象来调用对应的display方法

(newRectangle(.display(;

(newTriangle(.display(;

}

}

输出结果是?

答案:

(1Circle;(2Rectangle;(3Triangle。

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

当前位置:首页 > 医药卫生 > 药学

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

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