1.  
 
 
 A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:  
 
 
 1. A a0=new A();  
 
 
 2. A a1=new B();  
 
 
 3. A a2=new C();  
 
 
 问以下哪个说法是正确的()  
 
 
 A  
 只有第一行能通过编译  
 
 
 B  
 第1、2行能通过编译,但第3行编译出错  
 
 
 C  
 第1、2、3行能通过编译,但第2、3行运行时出错  
 
 
 D  
 第1行,第2行和第3行的声明都是正确的  
 
 
 正确答案:D  
 
 
 2.  
 
 
 下面代码将输出什么内容:()  
 
 
 public class SystemUtil{  
 
 
 public static boolean isAdmin(String userId){  
 
 
 return userId.toLowerCase()=="admin";  
 
 
 }  
 
 
 public static void main(String[] args){  
 
 
 System.out.println(isAdmin("Admin"));  
 
 
 }  
 
 
 }  
 
 
 A  
 true  
 
 
 B  
 false  
 
 
 C  
 1  
 
 
 D  
 编译错误  
 
 
 正确答案:B  
 
 
 3.  
 
 
 阅读如下代码。 请问,对语句行 test.hello(). 描述正确的有()  
 
 
 package NowCoder;  
 
 
 class Test {  
 
 
 public static void hello() {  
 
 
 System.out.println("hello");  
 
 
 
 }  
 
 
 public class MyApplication {  
 
 
 public static void main(String[] args) {  
 
 
 // TODO Auto-generated method stub  
 
 
 Test test=null;  
 
 
 test.hello();  
 
 
 }  
 
 
 }  
 
 
 A  
 能编译通过,并正确运行  
 
 
 B  
 因为使用了未初始化的变量,所以不能编译通过  
 
 
 C  
 以错误的方式访问了静态方法  
 
 
 D  
 能编译通过,但因变量为null,不能正常运行  
 
 
 正确答案:A  
 
 
 4. 在使用super和this关键字时,以下描述正确的是()  
 
 
 A  
 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一  
 
 
 行,否则编译不通过  
 
 
 B  
 super()和this()不一定要放在构造方法内第一行  
 
 
 C  
 this()和super()可以同时出现在一个构造函数中  
 
 
 D  
 this()和super()可以在static环境中使用,包括static方法和static语句块  
 
 
 正确答案:A  
 
 
 5.  
 
 
 如下代码的 结果是什么 ?  
 
 
 class Base {  
 
 
 Base() {  
 
 
 System.out.print("Base");  
 
 
 }  
 
 
 }  
 
 
 public class Alpha extends Base {  
 
 
 public static void main( String[] args ) {  
 
 
 new Alpha();  
 
 
 //调用父类无参的构造方法  
 
 
 new Base();  
 
 
 }  
 
 
 }  
 
 
 A  
 Base  
 
 
 B  
 BaseBase  
 
 
 
 C  
 编译失败  
 
 
 D  
 代码运行但没有输出  
 
 
 E  
 运行时抛出异常  
 
 
 正确答案:B  
 
 
 6.  
 
 
 如下代码的输出结果是什么?  
 
 
 public class Test {  
 
 
 public int aMethod(){  
 
 
 static int i = 0;  
 
 
 i++;  
 
 
 return i;  
 
 
 }  
 
 
 public static void main(String args[]){  
 
 
 Test test = new Test();  
 
 
 test.aMethod();  
 
 
 int j = test.aMethod();  
 
 
 System.out.println(j);  
 
 
 }  
 
 
 }  
 
 
 A  
 0  
 
 
 B  
 1  
 
 
 C  
 2  
 
 
 D  
 编译失败  
 
 
 正确答案:D  
 
 
 7. 下列哪一种叙述是正确的()  
 
 
 A  
 abstract修饰符可修饰字段、方法和类  
 
 
 B  
 抽象方法的body部分必须用一对大括号{ }包住  
 
 
 C  
 声明抽象方法,大括号可有可无  
 
 
 D  
 声明抽象方法不可写出大括号  
 
 
 正确答案:D  
 
 
 8.  
 
 
 下列说法正确的有:()  
 
 
 A  
 class中的constructor不可省略  
 
 
 B  
 constructor必须与class同名,但方法不能与class同名  
 
 
 
 C  
 constructor在一个对象被new 时执行  
 
 
 D  
 一个class只能定义一个constructor  
 
 
 正确答案:C  
 
 
 9.  
 
 
 选项中哪一行代码可以替换 //add code here 而不产生编译错误  
 
 
 public abstract class MyClass {  
 
 
 public int constInt = 5;  
 
 
 //add code here  
 
 
 public void method() {  
 
 
 }  
 
 
 }  
 
 
 A  
 public abstract void method(int a);  
 
 
 B  
 consInt=constInt+5;  
 
 
 C  
 public int method();  
 
 
 D  
 public abstract void anotherMethod(){}  
 
 
 正确答案:A  
 
 
 10.  
 
 
 在使用 interface 声明一个外部接口时,只可以使用( )修饰符修饰该接口。  
 
 
 A  
 private  
 
 
 B  
 protected  
 
 
 C  
 private protected  
 
 
 D  
 public  
 
 
 正确答案:D 
                        
                    
                
 posted on 
                
            
        
浙公网安备 33010602011771号