Java面试题及答案(326页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Java面试题及答案(326页).doc》由会员分享,可在线阅读,更多相关《Java面试题及答案(326页).doc(326页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-一. 选择题(234) 1.下面中哪两个可以在 A 的子类中使用:( ) class A protected int method1 (int a, int b) return 0; A. public int method 1 (int a, int b) return 0; B. private int method1 (int a, int b) return 0; C. private int method1 (int a, long b) return 0; D. public short method1 (int a, int b) return 0; 解答:AC 主要考查子类重
2、写父类的方法的原则 B,子类重写父类的方法,访问权限不能降低 C,属于重载 D,子类重写父类的方法 返回值类型要相同或是父类方法返回值类型的子类 2.Abstract method cannot be static. True or False ? A True B False 解答:A 抽象方法可以在子类中被重写,但是静态方法不能在子类中被重写,静态方法和静态属性与对象是无关的,只与类有关,这与 abstract 是矛盾的,所以 abstract 是不能被修饰为 static,否则就失去了 abstract 的意义了 3.What will be the output when you co
3、mpile and execute the following program. class Base void test() System.out.println(Base.test(); public class Child extends Base void test() System.out.println(Child.test(); static public void main(String a) Child anObj = new Child(); Base baseObj = (Base)anObj; baseObj.test(); Select most appropriat
4、e answer. A Child.test() Base.test() B Base.test() Child.test() C Base.test() D Child.test() 解答:D 测试代码相当于:Base baseObj = new Child();父类的引用指向子类的实例,子类又重写了父类 的 test 方法,因此调用子类的 test 方法。 4.What will be the output when you compile and execute the following program. class Base static void test() System.out
5、.println(Base.test(); public class Child extends Base void test() System.out.println(Child.test(); Base.test(); /Call the parent method static public void main(String a) new Child().test(); Select most appropriate answer. A Child.test() Base.test() B Child.test() Child.test() C Compilation error. Ca
6、nnot override a static method by an instance method D Runtime error. Cannot override a static method by an instance method 解答:C 静态方法不能在子类中被重写 5.What will be the output when you compile and execute the following program. public class Base private void test() System.out.println(6 + 6 + (Result); stati
7、c public void main(String a) new Base().test(); Select most appropriate answer. A 66(Result) B 12(Result) C Runtime Error.Incompatible type for +. Cant convert an int to a string. D Compilation Error.Incompatible type for +. Cant add a string to an int. 解答:B 字符串与基本数据类型链接的问题,如果第一个是字符串那么后续就都按字符串处理,比如上
8、边例子要是 System.out.println(Result)+6 + 6 );那么结果就是(Result)66,如果第一个和第二个。第 n 个都是基本数据第 n+1 是字符串类型,那么前 n 个都按加法计算出结果在与字符串连接 6.What will be the output when you compile and execute the following program. The symbol means space. 1:public class Base 2: 3: private void test() 4: 5: String aStr = One; 6: String b
9、Str = aStr; 7: aStr.toUpperCase(); 8: aStr.trim(); 9: System.out.println( + aStr + , + bStr + ); 7: 8: 9: static public void main(String a) 10: new Base().test(); 11: 12: Select most appropriate answer. A ONE, One B One ,One C ONE,One D ONE,ONE E One ,One 解答:E 通过 String bStr = aStr;这句代码使 bStr 和 aStr
10、 指向同一个地址空间,所以最后 aStr 和 bStr 的结果应该是一样,String 类是定长字符串,调用一个字符串的方法以后会形成一个新的字符串。 7.下面关于变量及其范围的陈述哪些是不正确的( ): A实例变量是类的成员变量 B实例变量用关键字 static 声明 C在方法中定义的局部变量在该方法被执行时创建 D局部变量在使用前必须被初始化 解答:BC 由 static 修饰的变量称为类变量或是静态变量 方法加载的时候创建局部变量 8.下列关于修饰符混用的说法,错误的是( ): Aabstract 不能与 final 并列修饰同一个类 Babstract 类中可以有 private 的成
11、员 Cabstract 方法必须在 abstract 类中 Dstatic 方法中能处理非 static 的属性 解答 D :静态方法中不能引用非静态的成员 9.执行完以下代码 int x = new int25;后,以下哪项说明是正确的( ): A、 x24为 0 B、 x24未定义 C、 x25为 0 D、 x0为空 解答:A x 属于引用类型,该引用类型的每一个成员是 int 类型,默认值为:0 10.编译运行以下程序后,关于输出结果的说明正确的是 ( ): public class Conditional public static void main(String args ) in
12、t x=4; System.out.println(“value is “+ (x4) ? 99.9 :9); A、 输出结果为:value is 99.99 B、 输出结果为:value is 9 C、 输出结果为:value is 9.0 D、 编译错误 解答:C 三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果 由容量高的决定。99.9 是 double 类型 而 9 是 int 类型,double 容量高。 11.关于以下 application 的说明,正确的是( ): 1 class StaticStuff 2 3 static int x=10
13、; 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 解答:C 自由块是类加载的时候就会被执行到的,自由块的执行顺序是按照在类中出现的先后顺序执行。 12.关于以下程序代码的说明正确的是( ): 1class HasStatic 2 priva
14、te 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 是私有静态变量 C、程序通过编译,输出结果
15、为:x=103 D、程序通过编译,输出结果为:x=102 解答:D 静态变量是所有对象所共享的,所以上述代码中的几个对象操作是同一静态变量 x, 静态变量可以通过类名调用。 13.下列说法正确的有() A class 中的 constructor 不可省略 B constructor 必须与 class 同名,但方法不能与 class 同名 C constructor 在一个对象被 new 时执行 D一个 class 只能定义一个 constructor 解答:C 构造方法的作用是在实例化对象的时候给数据成员进行初始化 A类中如果没有显示的给出构造方法,系统会提供一个无参构造方法 B构造方法与
16、类同名,类中可以有和类名相同的方法 D构造方法可以重载 14.下列哪种说法是正确的() A实例方法可直接调用超类的实例方法 B实例方法可直接调用超类的类方法 C实例方法可直接调用其他类的实例方法 D实例方法可直接调用本类的类方法 解答:D A. 实例方法不可直接调用超类的私有实例方法 B. 实例方法不可直接调用超类的私有的类方法 C要看访问权限 15.下列哪一种叙述是正确的( ) A abstract 修饰符可修饰字段、方法和类 B 抽象方法的 body 部分必须用一对大括号 包住 C 声明抽象方法,大括号可有可无 D 声明抽象方法不可写出大括号 解答:D abstract 可以修饰方法和类,
17、不能修饰属性。抽象方法没有方法体,即没有大括号 16.下面代码的执行结果是? import java.util.*; public class ShortSet public static void main(String args) Set s=new HashSet(); for(Short i=0;i 0 ) 5) j = I * 2; 6) System.out.println ( The value of j is + j ); 7) k = k + 1; 8) I-; 9) 10) A. 4 B. 6 C. 7 D. 8 解答:C k 没有初始化就使用了 24.对记录序列314,2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 试题 答案 326
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内