1.黑盒测试和白盒测试的区别?
黑盒测试:不用写代码,输入数据,对得到的数据进行分析,对程序的运行的过程不可知;
白盒测试:需要写代码,对程序的执行过程、逻辑、性能等进行测试分析
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分(成员变量、成员方法、构造方法等)封装成其他对象
3.获取 Class对象有几种方式?他们的用途都在哪?
(1)Class.forName("全类名"):将字节码文件加载进内存,返回Class对象.多用于配置文件,将类名定义
在配置文件中.读取文件,加载类;
(2)类名.class:通过类名的属性class获取,多用于参数的传递;
(3)对象.getClass():getClass()方法在Object类中定义着.多用于对象的获取字节码的方式.
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
Class对象调用getDeclaredFileds()和getDeclaredMethods()可以获取所有的成员变量和成员方法包括私有的.
,
5.注解在程序中都有哪些用途?
(1)编写文档:通过代码里标识的注解生成文档
(2)代码分析:通过代码里标识的注解对代码进行分析
(3)编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查
6.什么是元注解?
元注解:对注解的注解,常用的如:
@Target:描述注解能够作用的位置
@Retention:描述注解被保留的阶段
@Documented:描述注解是否被抽取到api文档中
@Inherited:描述注解是否被子类继承 |