……………………………………………………………最新资料推荐………………………………………………… Java单选题详解
一、单选题 (本大题共100题, 小计100.0分)
1. 访问权限修饰符有public、private、protected和默认修饰符(没有写任何修饰符),他们既可以用来修饰类,也可以用来修饰类中的成员,使用private修饰符的成员可见情况有( ) A、同一类[正确选项] ; B、不同包中的子类 ; C、同一包中的非子类 ; D、同一包中的子类 ; 参照答案:A 2.下列关于变量的叙述哪个是错的?( )
A、局部变量在使用前必须被初始化 ; B、实例变量是类的成员变量 ; C、实例变量用关键字static声明;
D、在方法中定义的局部变量在该方法被执行时创建 ; 参照答案:C
在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。类的每个对象维护它自己的一份实例变量的副本。
3. 关于以下程序段,正确的说法是( )
1. String s1=”abc”+”def”;
2. String s2=new String(s1); 3. if(s1= =s2)
4. System.out.println(“= = succeeded”); 5. if (s1.equals(s2))
6. System.out.println(“.equals() succeeded”); A、行6执行,行4不执行; B、行4与行6都将执行 ; C、行4执行,行6不执行 ; D、行4、行6都不执行 ; 参照答案:A
4. 下列程序代码段运行后,变量x的结果是( ) int x=0; int y=3; switch(y){ case 1:x++; case 2:x++;x++; case 3:x++;x++;x++; case 4:x+=4; }
1
……………………………………………………………最新资料推荐………………………………………………… A、10 ; B、6 ; C、7; D、3 ; 参照答案:C
5. 已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式。C类也位于packageA包,且继承了B类。则以下说法正确的是( ) A、A类的实例不能访问到B类的实例 ;
B、A类的实例能够访问到B类一个实例的x成员 ; C、C类的实例不能访问到B类的实例 ;
D、C类的实例可以访问到B类一个实例的x成员 [正确选项] ; 参照答案:D
6. 下列Java常见事件类中哪个是鼠标事件类?( ) A、WindowEvent ; B、KeyEvent ; C、InputEvent ;
D、MouseEvent [正确选项] ; 参照答案:D
7. 关于以下程序代码的说明正确的是( )
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、程序通过编译,输出结果为:x=102 [正确选项] ; B、10行不能通过编译,因为x是私有静态变量 ; C、5行不能通过编译,因为引用了私有静态变量 ; D、程序通过编译,输出结果为:x=103 ; 参照答案:A
8. 编译运行以下程序后,关于输出结果的说明正确的是( )
public class Conditional{
public static void main(String args[ ]){ int x=4;
2
……………………………………………………………最新资料推荐………………………………………………… System.out.println(“value is “ + ((x>4) ? 99.9 :9)); } }
A、输出结果为:value is 99.99 ;
B、输出结果为:value is 9.0 [正确选项] ; C、编译错误 ;
D、输出结果为:value is 9 ; 参照答案:B
9. 编译运行下面的代码会发生什么( ) public class Test extends Thread { private String sThreadName;
public static void main(String argv[]) { Test h = new Test(); h.go(); }
Test() { }
Test(String s) {
sThreadName = s; }
public String getThreadName() { return sThreadName; }
public void go() {
Test first = new Test(\ first.start();
Test second = new Test(\ second.start(); }
public void start() {
for (int i = 0; i < 2; i++) {
System.out.println(getThreadName() + i); try {
Thread.sleep(100);
} catch (InterruptedException e) { System.out.println(e.getMessage()); } } } }
3