一填空题每题2分共20分.docx
《一填空题每题2分共20分.docx》由会员分享,可在线阅读,更多相关《一填空题每题2分共20分.docx(11页珍藏版)》请在冰豆网上搜索。
一填空题每题2分共20分
一、填空题(每题2分,共20分)
1.定义类的保留字是class,定义接口的保留字是interface。
2.Socket通常也称为,用于描述和。
套接字IP地址端口
3.线程的优先级在1至10之间,数值越大任务越紧急
4.构造方法是一种特殊的成员方法,构造方法名与类名相同
5.Java语言只允许单继承,指每个类只能有一个父类。
二、选择题(每题2分,共50分)
1.操作系统的主要功能包括:
( )
A、程序编译和内存管理 B、CPU管理和内存管理
C、CPU管理和程序编译 D、数据的组织与维护
2.面向过程程序设计的核心是:
( )
A、商业逻辑和算法 B、客观实体和数据结构
C、算法和要解决的问题 D、客观实体和要解决的问题
3.符合对象和类关系的是:
( )
A、人和老虎 B、书和汽车
C、楼和土地 D、汽车和交通工具
4.关于选择结构下列哪个说法正确?
( )
A.if语句和else语句必须成对出现
B.if语句可以没有else语句对应
C.switch结构中每个case语句中必须用break语句
D.switch结构中必须有default语句
5.while循环和do…while循环的区别是:
( )
A.没有区别,这两个结构任何情况下效果一样
B.while循环比do…while循环执行效率高
C.while循环是先循环后判断,所以循环体至少被执行一次
D.do…while循环是先循环后判断,所以循环体至少被执行一次
6.关于for循环和while循环的说法哪个正确?
( )
A.while循环先判断后执行,for循环先执行后判断。
B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果
C.两种循环任何时候都不可以替换
D.两种循环结构中都必须有循环体,循环体不能为空
7.方法的作用不包含:
( )
A.使程序结构清晰 B.功能复用
C.代码简洁 D.重复代码
8. 方法内的变量:
( )
A.一定在方法内所有位置可见
B.可能在方法内的局部可见
C.可以在方法外可见
D.方法外也可用
9.void的含义:
( )
A.方法没有返回值 B.方法体为空
C.没有意义 D. 定义方法时必须使用
10.return语句:
( )
A.只能让方法返回数值 B.方法都必须含有
C.方法中可以有多句return D.不能用来返回对象
11.关于对象成员占用内存的说法哪个正确?
( )
A.同一个类的对象共用同一段内存
B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间
C.对象的方法不占用内存
D.以上都不对
12.下列说法哪个正确?
A.不需要定义类,就能创建对象
B.对象中必须有属性和方法
C.属性可以是简单变量,也可以是一个对象
D、属性必须是简单变量
13.下列说法哪个正确?
( )
A、一个程序可以包含多个源文件
B、一个源文件中只能有一个类
C、一个源文件中可以有多个公共类
D、一个源文件只能供一个程序使用
14.关于方法main()的说法哪个正确?
( )
A.方法main()只能放在公共类中
Bmain()的头定义可以根据情况任意更改
C.一个类中可以没有main()方法
D.所有对象的创建都必须放在main()方法中
15.构造函数何时被调用?
( )
A、创建对象时 B、类定义时
C、使用对象的方法时 D、使用对象的属性时
16. 抽象方法:
( )
A、可以有方法体
B、可以出现在非抽象类中
C、是没有方法体的方法
D、抽象类中的方法都是抽象方法
17.关于继承的说法正确的是:
( )
A、子类将继承父类所有的属性和方法。
B、子类将继承父类的非私有属性和方法。
C、子类只继承父类public方法和属性
D、子类只继承父类的方法,而不继承属性
18.关于构造函数的说法哪个正确?
( )
A、一个类只能有一个构造函数
B、一个类可以有多个不同名的构造函数
C、构造函数与类同名
D、构造函数必须自己定义,不能使用父类的构造函数
19.this和super:
A、都可以用在main()方法中
B、都是指一个内存地址
C、不能用在main()方法中
D、意义相同
20.关于接口哪个正确?
( )
A、实现一个接口必须实现接口的所有方法
B.一个类只能实现一个接口
C.接口间不能有继承关系
D.接口和抽象类是同一回事
21.例外包含下列哪些内容?
( )
A.程序执行过程中遇到的事先没有预料到的情况
B.程序中的语法错误
C.程序的编译错误
D.以上都是
22. 对于已经被定义过可能抛出例外的语句,在编程时:
( )
A、必须使用try/catch语句处理例外,或用throws将其抛出
B.如果程序错误,必须使用try/catch语句处理例外
C.可以置之不理
D.只能使用try/catch语句处理
23.假设classpath=“e:
\exercise\java”,包名为chapterone,编译过后生成的类文件将放在哪个路径下?
( )
A.e:
\exercise\java\chapterone
B.c:
\jdkl.3.1\fib
C.e:
\chapterone
D.c:
\programfiles\common\chapterone
24. 字符流与字节流的区别在于 ( )
A.前者带有缓冲,后者没有
B.前者是块读写,后者是字节读写
C.二者没有区别,可以互换使用
D.每次读写的字节数不同
25.下列流中哪个不属于字节流 ( )
A.FileInputStream
B.BufferedInputStream
C.FilterInputStream
D.InputStreamReader
三、程序填空题(每题6分,共30分)
1. publicclassOperator{
publicstaticvoidmain(Stringargs[]){
inti=1;
intj=2;
booleank1,k2,k3;
k1=iSystem.out.println("k1="+k1+"i="+i);
k2=iSystem.out.println("k2="+k2+"i="+i);
k1=1<2;
k2=2>1;
k3=k1^k2;
System.out.println("k3="+k3);
}
}
输出结果为:
k1=
(1)truei=
(2)2
k2=(3)falsei=(4)3
k3=(5)false
2.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:
10
(1)
jincalculate()is:
(2)20
Atlastjis:
10(3)
3.完成求n!
的程序
publicclassTest{
publicstaticvoidmain(Stringargs[]){
System.out.println(3+"!
="+factorial(3));
System.out.println(6+"!
="+factorial(6));
System.out.println(9+"!
="+factorial(9));
}
staticlongfactorial(intn){
longm=1;
for(intx=1;x<=n
(1);x++)
(2)m=m*x;
return(3)m;
}
}
4.按要求填空
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) SubAbstract (写出类名)
非抽象类有:
InheritAbstract
(2) (写出类名)
接口有:
AsSuper (3) (写出接口名)
AsSuper中的x()方法是(4)抽象 方法,所以在InheritAbstract中必须对它进行(5)覆盖或实现
5.按注释完成程序
publicclassLeaf{
privateinti=0;//此属性值用于检验
Leafincrement(){//定义方法increment(),返回值是Leaf类的对象
i++;
return
(1)this;//将当前对象的地址作为返回值返回
}
voidprint(){
System.out.println("i="+i);
}
publicstaticvoidmain(Stringargs[]){
Leafx=
(2)newleaf();//创建Leaf类的对象x
x.increment().increment().increment().print();
}//多次调用方法increment(),返回的都是x的地址,i值表示调用次数
输出结果为i=(3)3
一.填空题(每题2分,共20分)
1.classinterface
2.套接字IP地址端口
3.110任务越紧急
4.类名
5.父类
二.选择题(每题2分,共50分)
BCDBD
BDBAC
BCACA
CBCCA
AAADD
三.程序阅读填空题目(第题6分,共30分)
1. 答:
(1) true
(2) 2
(3) false
(4) 3
(5) false
2. 答:
(1) 10
(2)20
(3) 10
3. 答:
(1) x<=n
(2) m*=x
(3)m
4. 答:
(1) SubAbstract
(2) InheritAbstract
(3) AsSuper
(4) 抽象
(5) 覆盖或实现
5. 答
(1) this
(2) newLeaf()
(3) 3