一、选择题
1.下面哪些是合法的变量名? ( DEG )
A.2variable
B. .variable2
C. ._whatavariable
D._3_
E.$anothervar
F.#myvar
G. $_¥
2.请问 “abcd” instanceof Object返回的值是? ( B )
A. “abcd” B. true C. false D. String
3.下面有关方法覆盖说法不正确的是:( B )
A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值
B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限;
C. 覆盖的方法不能比被覆盖的方法抛出更多的异常
D. 覆盖的方法一定不能是private的
4. 下面代码段中:( A )
String String=”String”;
System.out.println(String);
A. String B. 不知道 C. 编译出错 D. 运行出错
5. 下面哪种是正确的创建Map集合的方式:( D )
A. Map m=new Map();
B. Map m=new Map(init capacity, increment capacity);
C. Map m=new Map(new Collection());
D. Map是接口,所以不能实例化。
6.关于被私有保护访问控制符protected修饰的成员变量,以下说法正确的是? ( A )
A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B. 可以被两种类访问和引用:该类本身、该类的所有子类
C. 只能被该类自身所访问和修改
D.只能被同一个包中的类访问
7.下列有关继承的说法。正确的是:(B )
A. 子类能继承父类的所有方法和属性;
B. 子类能继承父类的非私有方法和属性
C. 子类只能继承父类public方法和属性
D. 子类能继承父类的方法,而不是属性。
8.对于构造方法,下列叙述正确的是:(AC )
A. 构造方法的方法名必须与类名相同;
B. 构造方法必须用void申明返回类型
C. 构造方法可以被程序调用
D. 若编程人员没再类中定义构造方法,程序将报错。
9.下面是有关子类继承父类构造函数的描述,其中正确的是:(CD )
A. 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。
B. 子类可以不调用父类的构造函数
C. 子类必须通过super()关键字调用父类的构造函数
D. 子类无法继承父类的构造函数。
10. 下列说法中,正确的是:( A )
A. 类是变量和方法的集合体
B. 数组是无序数据的集合
C. 抽象类可以实例化
D. 类成员数据必须是公有的
11.在创建对象时必须( C )
A) 先声明对象,然后才能使用对象
B) 先声明对象,为对象分配内存空间,然后才能使用对象
C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象
D) 上述说法都对
12. Java中( C )
A) 一个子类可以有多个父类,一个父类也可以有多个子类
B) 一个子类可以有多个父类,但一个父类只可以有一个子类
C) 一个子类可以有一个父类,但一个父类可以有多个子类
D) 上述说法都不对
13.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B )
A) 安全性 B) 多线(程)性 C) 跨平台 D) 可移植
14. Character流与Byte流的区别是( C )
A) 每次读入的字节数不同 B) 前者带有缓冲,后者没有
C) 前者是字符读写,后者是字节读写 D) 二者没有区别,可以互换使用
15.关于以下application的说明,正确的是( C )
1. class StaticStuff
2. {
3. static int x=10;
4. static { x+=5;}
5. public static void main(String args[ ])
6. {
7. System.out.println(“x=” + x);
8. }
9. static { x/=3;}
10. }
A、4行与9行不能通过编译,因为缺少方法名和返回类型
B、9行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:x=5
D、编译通过,执行结果为:x=3
16.关于以下程序代码的说明正确的是( D )
1.class HasStatic{
2. private static int x=100;
3. public static void main(String args[ ]){
4. HasStatic hs1=new HasStatic( );
5. hs1.x++;
6. HasStatic hs2=new HasStatic( );
7. hs2.x++;
8. hs1=new HasStatic( );
9. hs1.x++;
10. HasStatic.x- -;
11. System.out.println(“x=”+x);
12. }
13. }
A、 5行不能通过编译,因为引用了私有静态变量
B、 10行不能通过编译,因为x