| 31) | class Super{ protected float getNum(){return 3.0f;} } public class Sub extends Super{ //Here } 下面哪些代码可放在Here处(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | float getNum(){return 4.0f;} | 
| 
 | b) | public void getNum(){} | 
| 
 | c) | private void getNum(double d){} | 
| 
 | d) | public double Getnum(){return 4.0d;} | 
| 
 | e) | public float getNum(){return 9;} | 
CDE 方法的重写以及自定义方法
方法的重写
 
1.在子类中可以根据需要对从基类中继承来的方法进行重写
2.重写方法必须和被重写方法具有相同方法名称,参数列表,返回类型
3.重写方法不能使用比被重写方法更严格的访问权限
| 2) | 在Java语言中,如果你编写一个多线程序,可以使用的方法是()。(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | 扩展类Thread | 
| 
 | b) | 实现Runnable接口 | 
| 
 | c) | 扩展类Runnable | 
| 
 | d) | 实现接口Thread | 
AB
| 3) | 下面哪些接口直接继承自Collection接口()(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | List | 
| 
 | b) | Map | 
| 
 | c) | Set | 
| 
 | d) | Iterator | 
 AC
| 4) | 关于HashMap和Hashtable正确的说法有()(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | 都实现了Map接口 | 
| 
 | b) | Hashtable类不是同步的,而HashMap类是同步的 | 
| 
 | c) | Hashtable 不允许null键或值 | 
| 
 | d) | HashMap 不允许null键或值 | 
 AC
HashMap 是Hashtable 的轻量级实现(非线程安全的实现),他们都完成了Map 接口.
Hashtable和HashMap的不同之处:
 
1.hashMap去掉了HashTable 的contains方法,但是加上了containsValue()和containsKey()方法。
2.hashTable同步的,而HashMap是非同步的,效率上逼hashTable要高。
3.hashMap允许空键值,而hashTable不允许 
| 5) | 下面关于构造方法的说法正确的是()(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | 构造方法不能被继承 | 
| 
 | b) | 构造方法不能被重写 | 
| 
 | c) | 构造方法不能被重载 | 
| 
 | d) | 构造方法不能声明为private | 
 
AB
 
 
| 6) | 研究下面的JAVA代码( )(单选) | |
| 
 | 
 | public class TestException { 
 /** * @param args */ public static void main(String[] args) { int a[] = {0,1,2,3,4}; int sum=0; try { for(int i=0;i<6;i++) { sum+=a[i]; } System.out.println("sum="+sum); } catch(java.lang.ArrayIndexOutOfBoundsException e) { System.out.println("数组下标越界"); } finally { System.out.println("程序结束"); } } 
 } 输出结果将是() | 
| 
 | a) | 10 数组下标越界 程序结束 | 
| 
 | b) | 10 程序结束 | 
| 
 | c) | 数组下标越界 程序结束 | 
| 
 | d) | 程序结束 | 
 C 
捕获异常 程序结束
| 7) | 研究下面JAVA代码 public class TestException { public static void main(String[] args) { try { System.out.println("hello,jr"); System.exit(0); } finally { System.out.println("88"); } } 
 } 输出结果为()(单选) | |
| 
 | 
 | 
 | 
| 
 | a) | hello,jr | 
| 
 | b) | 88 | 
| 
 | c) | hello,jr后是88 | 
| 
 | d) | 不能编译 | 
 A
| 8) | 考虑下面的代码 public class ConstOver{ public ConstOver(int x,int y,int z){} } 说出哪些重载了ConstOver构造器?(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | ConstOver(){} | 
| 
 | b) | protected int ConstOver(){} | 
| 
 | c) | private ConstOver(int z,int y,byte z){} | 
| 
 | d) | public void ConstOver(byte x,byte y,byte z){} | 
| 
 | e) | public Object ConstOver(int x,int y,int z){} | 
 AC  构造器的组成
| 9) | 有以下代码: | |
| 
 | 
 | package com; public class Test { public static void main(String[] args) { Test test = new Test(); //here } } 在here处加上以下什么语句,可以获得Class对象?(多选) | 
| 
 | a) | Class c = new Class(); | 
| 
 | b) | Class c = test.class; | 
| 
 | c) | Class c = Test.class; | 
| 
 | d) | Class c = test.getClass(); | 
| 
 | e) | Class c = Class.forName(“com.Test”); | 
| 
 | f) | Class c = Class.forName(“Test”); | 
CDE
用到了反射
| 10) | 能用来修饰interface方法的有( )(多选) | |
| 
 | 
 | 
 | 
| 
 | a) | private | 
| 
 | b) | public | 
| 
 | c) | protected | 
| 
 | d) | static | 
| 
 | e) | 不加修饰符 | 
 BE 接口的定义








