OOP期中考试试卷及答案

玛丽莲梦兔
684次浏览
2020年09月09日 02:59
最佳经验
本文由作者推荐

卫生资格考试-审美与表现自我评价


OOP期中考试试卷及答案
2006年5月9日
一、单选题:
1. 下面哪些是short类型的取值范围?
A. -2
7
-- 2
7
-1
B. 0 -- 2
16
-1
C. -2
15
-- 2
15
-1
D. -2
31
-- 2
31
-1
答案C

解析:短整型的数据类型的长度是16 bits,有符号。另外需要说明的是java中所有的整(I ntegral)数(包括
byte,short,int,long)全是有符号的。

2. 下列代码哪一行会出错:
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I * 2;
6) n (
7) k = k + 1;
8) I--;
9) }
10) }
A. line 4
B. line 6
C. line 7
D. line 8
答案C

3. 哪些语句是将一个八进制值赋值给一个long型变量?
A. long number = 345L;
B. long number = 0345;
C. long number = 0345L;
D. long number = 0x345L;
答案 C
解析: 八进制数以0开头,十六进制数以0x开头,long型数以L(大小写 均可,一般使用大写,因为小
写的l和数字1不易区分)。

4. public class Person{
static int arr[] = new int[10];
public static void main(String a[])





}
{

}
n(arr[1]);
A. 编译时将产生错误
B. 编译时正确,运行时将产生错误
C. 输出零
D. 输出空
答案C

5. paint()方法使用哪种类型的参数?
A. Graphics
B. Graphics2D
C. String
D. Color
答案A

6. 关于垃圾收集的哪些叙述是对的?
A. 程序开发者必须自己创建一个线程进行内存释放的工作。
B. 垃圾收集将检查并释放不再使用的内存。
C. 垃圾收集允许程序开发者明确指定并立即释放该内存。
D. 垃圾收集能够在给定的时间释放被java对象使用的内存。
答案B
解析:
Java语言将内存分配和释放的工组交给了自己,程序员不必做这些工作,它提供一 个系统级的线程跟踪每
个内存的分配,在JVM的空闲处理中,垃圾收集线程将检查和释放不再使用的内 存(即可以被释放的内存)。
垃圾收集的过程在java程序的生存期中是自动的,不需要分配和释放内 存,也避免了内存泄漏。可以调用
()方法建议(suggest)JVM执行垃圾收集以使得可被释放 的内存能立即被使用,当此方法返回的
时候,JVM已经做了最大的努力从被丢弃的对象上回收内存空间 。程序员不能指定收集哪些内存,一般而
言也不用关心这个问题,除非是程序的内存消耗很大,特别是有 很多临时对象时可以“建议“进行垃圾收集
以提高可用内存。需要指出的是调用()方法不能保证JVM 立即进行垃圾收集,而只能是建议,因
为垃圾收集线程的优先级很低(通常是最低的)。

7. 给出下面的代码:
if (x>0) { n(
else if (x>-3) { n(
else { n(
x的取值在什么范围内时将打印字符串。
A. x > 0
B. x > -3
C. x <= -3
D. x <= 0 & x > -3

答案D


解析:x>0时打印, x>-3&&x<=0时打印,x<=-3时打印。这个题目没有什么难的,只
要理解if语句的语法就 可以了。

8. 给定如下代码段:
1) class Person {
2) public void printValue(int i, int j) {*…* }
3) public void printValue(int i){*...* }
4) }
5) public class Teacher extends Person {
6) public void printValue() {*...* }
7) public void printValue(int i) {*...*}
8) public static void main(String args[]){
9) Person t = new Teacher();
10) alue(10);
11) }
12) }

第十行的语句将调用哪些方法?
A. on line 2
B. on line 3
C. on line 6
D. on line 7
答案D
解析:
变量t是一个Perso n对象,但是它是用Teacher实例化的,这个问题涉及到java的编译时多态和运行时多
态的问 题,就编译时多态来说,t实际上是一个Person类,这涉及到类型的自动转换(将一个子类的实例
赋值给一个父类的变量是不用进行强制类型转换,反之则需要进行强制类型转换,而且被赋值的变量实际
上应该是一个子类的对象),如果对t调用了子类中新增的方法则造成编译时错误编译将不能通过,而在运
行时,运行时系统将根据t实际指向的类型调用对应的方法,对于本例来说,(10)将调用t实际指向的Teacher类的对应方法。在java中,可以用一个子类的实例实例化父类的一个变量,而变量在编译 时是一个
父类实例,在运行时可能是一个子类实例。

9. 作为程序入口的main()方法的返回类型是什么?
A. int
B. void
C. boolean
D. static
答案B
解析:
在java中,程序运行的入口就是main()方法,它必须是这样的形式:public static void main(String args[])。
但是严格来讲这个题目的答案还 可以加上a和c,因为并没有限定是程序入口的main()方法,而main()方法
是可以重载的。 一般意义上的main()当然就是指我们刚开始所说的main()方法了。


10. int的取值范围是哪个?
A. -2
7
-- 2
7
-1
B. 0 -- 2
32
-1
C. -2
15
-- 2
15
-1
D. -2
31
-- 2
31
-1
答案D
解析:
int型是32位的。参看第一题的论述。

二、多选题:

11. 下面哪些不是java的基本数据类型。
A. short
B. Boolean
C. unit
D. float
答案B, C
解析:
Java的原始数据类型一共就八个,分别是:byte,short,int,lo ng,boolean,char,float,double。注意这些是大小写
敏感的,而Bool ean是booelan的封装类(wrapper class)。

12. 下面关于继承的哪些叙述是正确的?
A.在java中只允许单一继承。
B.在java中一个类只能实现一个接口。
C.在java中一个类不能同时继承一个类和实现一个接口。
D.java的单一继承使代码更可靠。
答案A,D
解析:
在ja va中一个类只能有一个直接父类,但是可以实现多个接口,在继承的同时可以实现接口,之所以取消
多 继承的原因是多继承使得代码产生很多问题,而使用单一继承则可以使代码更可靠。

13. 下列哪些不是Java关键字?
A. TRUE
B. sizeof
C. const
D. super
E. void

答案A, B
解析:
A:不是,Java中有true,但是这也不是关键字而是字面量(literal)。
B:不是,Java中不需要这个操作符,所有的类型(原始类型)的大小都是固定的。
C、D、E都是,需要说明的是const是java中未被使用的关键字。


14. 下列哪些代码段不会出现编译错误?
A.
int i=0;
if (i) {
n(“Hi”);
}
B.
boolean b=true;
boolean b2=true;
if(b==b2) {
n(“So true”);
}
C.
int i=1;
int j=2;
if(i==1|| j==2)
n(“OK”);
D.
int i=1;
int j=2;
if (i==1 &| j==2)
n(“OK”);

答案B, C
解析:选项A错,因为if语句后需要一个boolean类型的表达式。逻辑操作有^、&、| 和 &&、||,但是“&|”
是非法的,所以选项D不正确。

15. 下列哪两个选项体现了组合(”has a”)关系?
A. public interface Person { }
public class Employee extends Person{ }
B. public interface Shape { }
public interface Rectandle extends Shape { }
C. public interface Colorable { }
public class Shape implements Colorable { }
D. public class Species{ }
public class Animal{private Species species;}
E. interface Component{ }
class Container implements Component{
private Component[] children;
}

答案D, E
解析: 在Java中代码重用有两种可能的方式,即组合(“has a”关系)和继承(“is a”关系)。“has a”关系是
通过定义类的属性的方式实现的;而“is a”关系是通过类继承实现的。本例中选项A、B、C体现了“is a”关


系;选项D、E体现了“has a”关系。

16. 在 point x处的哪些语句在语法上合法的?
class Person {
private int a;
public int change(int m){ return m; }
}
public class Teacher extends Person {
public int b;
public static void main(String arg[]){
Person p = new Person();
Teacher t = new Teacher();
int i;
point x
}
}

A. i = m;

B. i = b;
C. i = p.a;
D. i = (30);
E. i = t.b.
答案D,E
解析:
A:m没有被申明过,不能使用。
B :虽然b是类Teacher的public成员变量,但是在静态方法中不能使用类中的非静态成员。
C:a是类Person的private成员,在类外不能直接引用。
D:change(int m)方法是public方法,并且返回一个int型值,可以通过类的实 例变量p引用并赋值给一个
int型变量。
E:b是类Teacher的public成员变 量,且是int型,可以通过类的实例变量t引用并赋值给一个int型变量。

17. 下面的哪些程序片断可能导致错误?
A. String s =
String t =
String k = s + t;

B. String s =
String t;
t = s[3] +

C. String s =
String standard = rCase();


D. String s =
String t = s -

答案B,D
解析:
A:String类型可以直接使用+进行连接运算。 < br>B:String是一种Object,而不是简单的字符数组,不能使用下标运算符取其值的某个元素, 错误。
C:toUpperCase()方法是String对象的一个方法,作用是将字符串的内容 全部转换为大写并返回转换后的结
果(String类型)。
D:String类型不能进行减(-)运算,错误。

18. 下面哪些是合法的标识符?
A. $$persons
B. TwoUsers
C. *point
D. this
E. _endline
答案A,B,E
解析: Java的标识符可以以一个Unicode字符,下滑线(_) ,美元符($$)开始,后续字符可以是前面的
符号和数字,没有长度限制,大小写敏感,不能是保留字。

19. 执行代码String[] s=new String[10]后, 哪个结论是正确的?
A. s[10] 为
B. s[9] 为 null;
C. s[0] 为 未定义
D. 为10
答案B, D

20. 下面的表达式哪个是正确的?
A. String s=你好
B. String s=你好
C. String s=你好
D. String s=你好
E. String s=null; int i=(s!=null)&&(()>0)?():0;
答案A, C, E

三、判断题:

1. 在具有继承关系的两个类中,子类继承父类的所有方法。
正确

2. 抽象类中可以有非抽象方法。
错误
答案 错误


正确

错误
答案 正确
3. 2. 接口(interface)中可以有非抽象方法。
正确


4. 在具有继承关系的两个类中,父类的引用可以指代子类对象。
正确

5. 在具有继承关系的两个类中,子类覆盖父类方法的条件是方法签名相同。
正确

6. 在具有继承关系的两个类中,如果子类与父类不在同一个包中,子类可以访问父类中默认访问属性 的成
员方法。
正确

7. 在具有继承关系的两个类中,子类在继承父类的同时还可以实现多个接口。
正确

8. Java支持多重继承。
正确

9. Java可以通过实现接口来达到多重继承的目的。
正确

10. 在具有继承 关系的两个类中,如果以父类的引用指代子类对象,那么通过这个引用可以访问子类中新
定义的方法。
正确


参考题来源:
错误
答案 错误
错误
答案 正确
错误
答案 错误
错误
答案 正确
错误
答案 错误
错误
答案 错误
错误
答案 正确
错误
答案 错误
中文java技术网SUN认证Java2程序员考试(SCJP) 试题解析.htm
中文java技术网SCJP认证套题解析之一.htm
Java期末考试题

福建省教育考试院-工程合同范本


我的童年生活作文-天津南开中学网站


对中国免签的国家-中考食谱


骆驼的资料-歌颂祖国的儿歌


江苏人事-干部考核总结


山东信息职业学院-销售经理工作计划


海军潜艇学院-海底两万里读后感800字


儿童笑话-好书读后感