java基础笔试题
java基础加强
考查的知识点:junit测试
1.下面注解中,哪项是定义一个Junit单元测试的方法() (难度A)
A、@Test
B、@Ignor
C、@Before
D、@After
考查的知识点:基础加强泛型
2.下面哪一项不是泛型的优点()(难度A)
A、泛型对Java程序的安全性没有作用
B、减少强制转换操作
C、将运行时的类型转换异常转换为了编译错误
D、能简化带有泛型集合的遍历,简化了代码
考查的知识点:基础加强枚举
3.下面哪一个是用来声明一个枚举类()(难度A)
A、Enum
B、Enumeration
C、enum
D、ENUM
考查知识点:基础加强泛型
7.下面关于泛型的定义说法正确的是( ) (难度B)
A、可以类上定义泛型,在类上定义的泛型可以在非static的成员上直接使用
B、可以类上定义泛型,在类上定义的泛型可以在所有的成员上使用
C、可以在方法上定义泛型,在方法上定义的泛型只能在方法内使用
D、可以在方法上定义泛型,定义的位置必须在方法返回值之前。
考查知识点:基础加强枚举
8.下面关于枚举说法正确的是( ) (难度B)
A、枚举中可以有抽象方法
B、所有的枚举项默认都是public static final修饰的
C、枚举中的构造方法默认是private,可以重载
D、枚举中不能有成员属性
考查知识点:基础加强增强for循环
9.使用增强for循环可以操作下面哪些类型( ) (难度B)
A、java.util.List集合
B、数组
C、所有实现了Iterable接口
D、java.lang.String
考查知识点:基础加强可变参数
10.示例 public void add(int... a)调用add方法正确的是( ) (难度B)
A、add(1,2)
B、add(1,2,3,4)
C、add(new int[]{1,2,3,4})
D、add()
考查知识点:基础加强泛型
11.示例
List<Number> list=new ArrayList<Number>();
调用addAll方法可以添加的有( ) (难度C)
A、List<Integer> a=new ArrayList<Integer>();
B、Set<Integer> b=new HashSet<Integer>();
C、List<Double> c=new ArrayList<Double>();
D、List<String> d=new ArrayList<String>();
考查知识点:基础加强反射
12.java中获取Class对象的方式有( ) (难度B)
A、通过类名.class获取
B、通过对象.getClass()获取
C、通过Class.forName获取
D、通过对象.class获取
考查知识点:基础加强反射
13.下面哪些方法可以获取一个类的构造器( ) (难度B)
A、getConstructor(Class<?>... parameterTypes)
B、getDeclaredConstructor(Class<?>... parameterTypes)
C、getDeclaredConstructors()
D、getConstructors();
考查知识点:基础加强反射
14. 下面哪些方法可以获取一个类的成员变量( ) (难度B)
A、getDeclaredFields()
B、getDeclaredField(String name)
C、getField(String name)
D、以上都不对
考查知识点:基础加强反射
15. 下面哪此方法可以获取一个类的成员方法( ) (难度B)
A、getDeclaredMethods()
B、getDeclaredMethod(String name)
C、getMethod(String name)
D、以上都不对
考查知识点:基础加强反射
16.执行以下哪个方法后,可以通过反射访问私有成员? (难度B)
A、getMethod();
B、setAccessible(boolean b)
C、getDeclaredConstructors()
D、getConstructors();
考查知识点:基础加强包装类
17.示例(JDK1.5及以上版本)
Integer in1=new Integer(100);
Integer in2=new Integer(100);
Integer in3=100;
Integer in4=100;
System.out.println(in1==in2);
System.out.println(in2==in3);
System.out.println(in3==in4);
程序执行后的结果是( ) (难度C)
A、false false false
B、false false true
C、false true true
D、以上都不对
考查知识点:基础加强反射
18.通过反射得到一个类Test的执行入口main方法
Method main=Test.class. getDeclaredMethod("main",String[].class);
执行main方法下面正确的是( ) (难度C)
A、main.invoke(null, new Object[]{new String[]{“abc”}});
B、main.invoke(null,new String[]{“abc”})
C、main.invoke(null,”abc”)
D、main.invoke(null,(Object)(new String[]{“abc”}))
考查知识点:基础加强反射
19.通过反射调用一个类(Test)中的静态方法show()正确的是( )
Method show = …; (难度C)
A、show.invoke(null);
B、show.invoke(Test)
C、show.invoke(Test.class.newInstance())
D、以上都不对
考查知识点:基础加强反射
20.以下哪些方法可以通过反射调用默认构造方法( ) (难度C)
A、类名.class.newInstance();
B、类名.class.getConstructor ().newInstance()
C、new 类名();
D、以上都不对