A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

同学们,今天是我们基础阶段的最后一天,从后天开始,我们将进入WEB的新解决,做好总结,迎接新的挑战:
1.黑盒测试和白盒测试的区别?
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
3.获取 Class对象有几种方式?他们的用途都在哪?
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
5.注解在程序中都有哪些用途?
6.什么是元注解?

56 个回复

倒序浏览
本帖最后由 陈驰煜 于 2019-4-7 20:00 编辑

1.黑盒测试和白盒测试的区别?
黑盒测试无需编写代码,只需给输入值,测试程序能否输出正确的值
白盒测试需编写代码进行测试,关注程序的执行过程,更加详尽的测试

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
将一个类的各个部分封装成为对象(构造方法封装成构造器对象,成员方法封装成方法对象,成员变量封装成字段对象)的行为叫反射;
应用场景:反射是框架设计的灵魂,使用反射可以在程序运行时创建对象,修改对象内容等
使用反射的好处:
        1.实现解耦,提高程序的可拓展性;
        2.可以在程序运行过程中,操作这些对象

3.获取 Class对象有几种方式?他们的用途都在哪?
a.Class.forName(全类名),多用于使用配置文件的情况,将类名定义在配置文件中,读取配置文件得到全类名;
b.对象名.getClass(),getClass()是Object类中的方法,任何类都继承了此方法
c.类名.class,通过类名的属性class获取,多用于参数的传递

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
使用Class对象的getDeclareField()方法获取对象的私有成员变量;
使用Class对象的getDeclareMethod()方法获取对象的私有成员方法.

5.注解在程序中都有哪些用途?
a.编写文档:通过代码里表示的注解生成文档(doc文档)
b.代码分析:通过注解对代码进行分析
c.编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查


6.什么是元注解?
用于描述注解的注解叫元注解,
元注解的种类:
        @Target(ElementType.xxxx): 限定注解可以使用的位置:
                xxxx的取值:
                        TYPE:可以作用于类上
                        METHOD:可以作用于方法上
                        FIELD:可以作用于成员变量上
        @Retention(RetentionPolicy.xxxx): 描述注解被保留的阶段
                SOURCE                写源码时
                CLASS                编译成class后
                RUNTIME        一直到运行期都保留
        @Documented:描述注解是否被抽取到api文档中
        @Inherited:描述注解是否被子类继承

点评

写的不错  发表于 2019-4-9 21:41
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?

黑盒测试:不需要写代码,给输入值,看是否能达到预期要求
白盒测试:需要写代码,关注的是程序具体的执行流程

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?

反射就是将类的各个组成部分封装到其他对象中,这就是反射机制
反射一般使用class类对象阶段,
我们使用反射机制可以在程序运行过程中不改变代码的情况下操作类中的元素,提高程序的可扩展性

3.获取 Class对象有几种方式?他们的用途都在哪?

三种方式:
(1)Class.forName("全类名"),将字节码文件加载到内存中,返回Class对象,这类方式多用在加载配置文件中
(2)类名.class,通过类名获取class对象,多用在参数传递上
(3)对象.getClass,继承Object类,多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?

获取私有成员变量对象:
(1)getDeclaredFields()  获取所有的成员变量对象 ,不考虑修饰符
(2)getDeclaredField(String name)获取某个成员变量对象 ,不考虑修饰符

获取私有成员方法对象:
(1)Method[] getDeclaredMethods()  反回此 Class 对象表示的类或接口声明的所有方法,不包括继承的方法。
(2)Method getDeclaredMethod(String name, 类<?>... parameterTypes)  反回此 Class 对象表示的类或接口声明的某个方法,不包括继承的方法。

5.注解在程序中都有哪些用途?

(1)编写文档:通过代码里标识的注解生成文档
(2)代码分析:通过代码里标识的注解对代码进行分析
(3)编译检查:通过代码里标识的注解让编译器实现最基本的编译检查

6.什么是元注解?

元注解就是用于描述注解的注解
@Target:描述注解作用的位置,ElementType取值:TYPE:作用在类上;METHOD:作用在方法上;FIELD:作用在成员变量上
@Retention:描述注解被保留的阶段,RetentionPolicy:RUNTIME,作用运行阶段;SOURCE源码阶段;CLASSclass字节码阶段
@Documented:描述注解是否被抽取到API文档中
@Inherited:描述注解是否被子类继承
回复 使用道具 举报
本帖最后由 陈伟彬 于 2019-4-7 20:38 编辑

1.黑盒测试和白盒测试的区别?
答:
        黑盒测试:不要写代码,给输入值,看程序是否能够给出输出的期望值;
        白盒测试:需要写代码,关注程序具体的执行流程;

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:
        反射:将类的各个组成部分封装为其他对象,这就是反射机制;
        应用:用于框架的设计;
        好处:
                可以在程序运行过程中,操作这些对象;
                可以解耦,提高程序的课扩展性;

3.获取 Class对象有几种方式?他们的用途都在哪?
答:
        三种:
        Class.forName("全类名"):用于配置文件;
        类名.class:用于参数的传递;
        对象.getClass( );用于对象的获取字节码的方式;

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
答:
        Field[] getDeclaredFields():获取所有的成员变量,不考虑修饰符;
        Field getDeclaredField(String name):获取指定名称的成员变量,不考虑修饰符;

        Method getDeclaredMethod(String name, 类<?>... parameterTypes):获取指定方法,不考虑修饰符;
        Method getDeclaredMethods(String name, 类<?>... parameterTypes):获取所有的成员方法,不考虑修饰符;

5.注解在程序中都有哪些用途?
答:
        编写文档:通过标识的注解生成文档;
        代码分析:通过标识的注解对代码进行分析;
        编译检查:通过标识的注解让编译器实现基本的编译检查;

6.什么是元注解?
答:
        用于描述注解的注解;
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
白盒测试:需要写代码的。关注程序具体的执行流程。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射是框架设计的灵魂
好处:
可以在程序运行过程中,操作这些对象。
可以解耦,提高程序的可扩展性。
3.获取 Class对象有几种方式?他们的用途都在哪?
获取Class对象的方式:
Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
多用于配置文件,将类名定义在配置文件中。读取文件,加载类
类名.class:通过类名的属性class获取
多用于参数的传递
对象.getClass():getClass()方法在Object类中定义着。
多用于对象的获取字节码的方式
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
1. 获取成员变量们
Field[] getFields() :获取所有public修饰的成员变量
Field getField(String name)   获取指定名称的 public修饰的成员变量
Field[] getDeclaredFields()  获取所有的成员变量,不考虑修饰符
Field getDeclaredField(String name)  
获取构造方法们
Constructor<?>[] getConstructors()  
Constructor<T> getConstructor(类<?>... parameterTypes)  
Constructor<T> getDeclaredConstructor(类<?>... parameterTypes)  
Constructor<?>[] getDeclaredConstructors()  
获取成员方法们:
Method[] getMethods()  
Method getMethod(String name, 类<?>... parameterTypes)  
Method[] getDeclaredMethods()  
Method getDeclaredMethod(String name, 类<?>... parameterTypes)  
获取全类名       
String getName()
5.注解在程序中都有哪些用途?
概念:说明程序的。给计算机看的
编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
代码分析:通过代码里标识的注解对代码进行分析【使用反射】
编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】
6.什么是元注解?
元注解:用于描述注解的注解
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
白盒测试:需要写代码的,关注程序具体的执行流程。

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
使用反射的好处:
        1. 可以在程序运行过程中,操作这些对象。
        2. 可以解耦,提高程序的可扩展性。

3.获取 Class对象有几种方式?他们的用途都在哪?
获取Class对象的方式:
        1. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
                用途:多用于配置文件,将类名定义在配置文件中。读取文件,加载类
        2. 类名.class:通过类名的属性class获取
                用途:多用于参数的传递
        3. 对象.getClass():getClass()方法在Object类中定义着。
                用途:多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
使用Field[] getDeclaredFields()和Field getDeclaredField(String name)可以获取私有成员变量
使用Method[] getDeclaredMethods()和Method getDeclaredMethod(String name, 类<?>... parameterTypes)可以获取私有成员方法

5.注解在程序中都有哪些用途?
        ①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
        ②代码分析:通过代码里标识的注解对代码进行分析【使用反射】
        ③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】

6.什么是元注解?
用于描述注解的注解
回复 使用道具 举报
答:黑盒测试:不需要写代码,给输入值,看程序是否能输出期望的值(很直观的测试bug)
      白盒测试:需要写代码,关注程序的具体流程。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:反射:将类的各个组成部分封装为其他对象,这就是发射机制
      好处:1.可以在程序运行过程中,操作这些对象

       
        2.可以解耦,提高程序的扩展性

3.获取 Class对象有几种方式?他们的用途都在哪?
答:有三种分别为:
        1.class.forName(全类名)
        2.类名.class
        3.对象名.getclass
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
.答:          Field[] declaerdFieldas();获取所有的成员变量,不考虑修饰符
        Field[] declaerdFielda(String name)指定需要获取的成员变量
        Method getDeclaredMethod(String name, 类<?>... parameterTypes):获取指定方法,不考虑修饰符
        Method getDeclaredMethods(String name, 类<?>... parameterTypes):获取所有的成员方法,不考虑修饰符;  
5.注解在程序中都有哪些用途?
        编写文档:通过标识的注解生成文档;
                代码分析:通过标识的注解对代码进行分析;
                编译检查:通过标识的注解让编译器实现基本的编译检查;
6.什么是元注解?
         用于描述注解的注解
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
答:黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值
白盒测试:需要写代码,关注程序具体的执行流程

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:反射:将类的各个组成部分封装为其他对象;
使用反射有以下好处:1.可以在程序运行过程中,操作这些对象 2.可以解耦,提高程序的可扩展性

3.获取 Class对象有几种方式?他们的用途都在哪?
答:1.Class.forName("全类名"):将字节码文件加载进内存,返回class对象
多用于配置文件,将类名定义在配置文件中。读取文件,加载类
2.类名.class:通过类名的属性class获取
多用于参数的传递
3.对象.getClass():getClass()方法在object类中定义着
多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
答:私有的成员变量对象:Field[] getDeclaredFields()
私有的成员方法对象:Method[] getDeclaredMethods()

5.注解在程序中都有哪些用途?
答:①编写文档:通过代码里标识的注解生产文档【生产文档doc文档】
②代码分析:通过代码里标识的注解对代码进行分析【使用反射】
③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【@Override】
6.什么是元注解?
答:注解本质上就是一个接口,该接口默认继承Annotation接口,而元注解是用于描述注解的注解。
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:不需要编写代码,直接暴力的输入一个值,看结果是不是其想要的。
白盒测试:需要编写一定的代码。要关注程序执行的流程。

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射式框架设计的灵魂。
使用反射:       
1. 可以在程序运行过程中,操作这些对象。2. 可以解耦,提高程序的可扩展性。

3.获取 Class对象有几种方式?他们的用途都在哪?
三种。
a. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
        * 多用于配置文件,将类名定义在配置文件中。读取文件,加载类
b. 类名.class:通过类名的属性class获取
        * 多用于参数的传递
c. 对象.getClass():getClass()方法在Object类中定义着。
        * 多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
使用* setAccessible(true):暴力反射。

5.注解在程序中都有哪些用途?
①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
②代码分析:通过代码里标识的注解对代码进行分析【使用反射】
③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】

6.什么是元注解?
元注解:用于描述注解的注解。
回复 使用道具 举报
王佳盛

1.        黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,直接给输入值,看程序能否输出期望的值。
白盒测试:需要写代码,关注程序具体的执行流程。

2.        什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射的好处:1.可以在程序运行的过程中,操作这些对象2.可以解耦,提高程序的可扩展性。

3.        获取 Class对象有几种方式?他们的用途都在哪?
第一种:通过类名称.class获取;多用于参数的传递。
第二种:通过Class.forName ()方法中传递全类名获取;多用于配置文件,将类名定义在配置文件中,读取文件,加载类。
第三种:通过对象.getClass()获取;多用于对象的获取字节码方式。

4.        如何获取Class对象中被私有的成员变量对象和成员方法对象?
获取私有成员变量对象:
Filed getDeclaredField(String name):指定成员变量名获取成员变量对象;
Filed[]  getDeclaredFields():获取所有的成员变量对象
获取私有成员方法对象:
Method getDeclaredMethod(String name):指定方法名获取成员方法对象;
Method[] getDeclaredMethods():获取所有的成员方法对象

5.        注解在程序中都有哪些用途?
注解可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。是给程序看的。

6.        什么是元注解?
用于描述注解的注解就是元注解
回复 使用道具 举报
黄志斌:
1.黑盒测试和白盒测试的区别?
        黑盒测试不需要编写代码,而是以在网页上进行多次运行来达到排查bug。
        白盒测试需要编写一个测试类来测试测试方法是否存在bug。

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
        反射机制将类的各个功能部分封装为其他对象。
        反射在Class执行阶段中使用。
        可以在代码执行的过程中去操作类中的信息。

3.获取 Class对象有几种方式?他们的用途都在哪?
        获取Class对象的方式有三种,分别为Class.forName("全类名")、类名.class和对象.getClass()。
        1. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
                多用于配置文件,将类名定义在配置文件中。读取文件,加载类
        2. 类名.class:通过类名的属性class获取
                多用于参数的传递
        3. 对象.getClass():getClass()方法在Object类中定义着
                多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
        使用暴力反射setAccessible(true)来忽略访问权限修饰符的安全检查。

5.注解在程序中都有哪些用途?
        可以通过代码里的注解生成文档、对代码进行分析和让编译器实现基本的编译检查。

6.什么是元注解?
        元注解是用于描述注解的注解,可以去规范注解能使用的位置和被保留的阶段等等。

回复 使用道具 举报

1.黑盒测试和白盒测试的区别?
黑盒测试:不需要编写代码,直接暴力的输入一个值,看结果是不是其想要的。
白盒测试:需要编写一定的代码。要关注程序执行的流程。

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射式框架设计的灵魂。
使用反射:        
1. 可以在程序运行过程中,操作这些对象。2. 可以解耦,提高程序的可扩展性。

3.获取 Class对象有几种方式?他们的用途都在哪?
三种。
a. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
        * 多用于配置文件,将类名定义在配置文件中。读取文件,加载类
b. 类名.class:通过类名的属性class获取
        * 多用于参数的传递
c. 对象.getClass():getClass()方法在Object类中定义着。
        * 多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
使用* setAccessible(true):暴力反射。

5.注解在程序中都有哪些用途?
①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
②代码分析:通过代码里标识的注解对代码进行分析【使用反射】
③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】

6.什么是元注解?
元注解:用于描述注解的注解。
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
答:
黑盒测试:不需要写代码,程序运行的过程不可知,只知道结果
白盒测试:需要写代码,程序运行过程可知,整个执行过程、逻辑、性能可视

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:
反射是框架设计的灵魂,将类的各个组成部分封装为其他对象。
这样做的好处是可以在程序运行的过程中操作这些对象,可以解耦,提高程序的可扩展性。

3.获取 Class对象有几种方式?他们的用途都在哪?
答:
获取 Class对象有3种方法:
(1). Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
多用于配置文件,将类名定义在配置文件中。读取文件,加载类
(2). 类名.class:通过类名的属性class获取
多用于参数的传递
(3). 对象.getClass():getClass()方法在Object类中定义着。
多用于对象的获取字节码的方式

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
答:
Class对象调用setAccessible(true):暴力反射可获取被私有的成员变量对象和成员方法对象

5.注解在程序中都有哪些用途?
答:
编译检查:通过代码里的标识的注解让编译器能够实现基本的编译检查。
编写文档:通过代码里标识的注解生成文档。
代码分析:通过代码里表示的注解对代码进行分析。

6.什么是元注解?
答:
元注解:用于描述注解的注解
常用元注解有:
@Target:描述注解能够作用的位置
@Retention:描述注解被保留的阶段
@Retention(RetentionPolicy.RUNTIME):当前被描述的注解,会保留到class字节码文件中,并被JVM读取到
@Documented:描述注解是否被抽取到api文档中
@Inherited:描述注解是否被子类继承
回复 使用道具 举报
同学们,今天是我们基础阶段的最后一天,从后天开始,我们将进入WEB的新解决,做好总结,迎接新的挑战:
1.黑盒测试和白盒测试的区别?
          黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
          白盒测试:需要写代码的。关注程序具体的执行流程。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
   反射:将类的各个组成部分封装为其他对象,这就是反射机制
   反射是框架的设计的灵魂,而框架作为半成品的软件,在框架的基础上进行软件开发时可以简化代码
   应用反射的好处:1. 可以在程序运行过程中,操作这些对象。
                  2. 可以解耦,提高程序的可扩展性。
3.获取 Class对象有几种方式?他们的用途都在哪?
        1. Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
                * 多用于配置文件,将类名定义在配置文件中。读取文件,加载类
        2. 类名.class:通过类名的属性class获取
                * 多用于参数的传递
        3. 对象.getClass():getClass()方法在Object类中定义着。
                * 多用于对象的获取字节码的方式

用途:
    1,获取成员变量们
    2,获取成员方法们
    3,获取构造方法们
    4,获取全类名
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
     使用忽略访问权限修饰符的安全检查 setAccessible(true):暴力反射
5.注解在程序中都有哪些用途?
  说明程序的,给计算机看的
  作用分类:
        ①编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
        ②代码分析:通过代码里标识的注解对代码进行分析【使用反射】
        ③编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查
6.什么是元注解?
用于表示注解的注解
* @Target:描述注解能够作用的位置
* ElementType取值:
* TYPE:可以作用于类上
* METHOD:可以作用于方法上
* FIELD:可以作用于成员变量上
* @Retention:描述注解被保留的阶段
* @Retention(RetentionPolicy.RUNTIME):当前被描述的注解,会保留到class字节码文件中,并被JVM读取到
* @Documented:描述注解是否被抽取到api文档中
* @Inherited:描述注解是否被子类继承
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码来测试。
白盒测试:需要写代码来进行测试。

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:就是将一个类的  成员方法 、成员变量 、构造方法封装成其他对象。
因为可以在程序的运行过程中,操作这些对象,还可以提高程序的扩展性

3.获取 Class对象有几种方式?他们的用途都在哪?
class.forname(“全类名”)    用于配置文件
一个类的类名.getclass        用于对象的获取字节码的方式
类.class        用于参数的传递



4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
class对象的对象名.getDeclaredField()  获取指定的私有成员变量对象
class对象的对象名.getDeclaredFields() 获取所以私有成员变量对象

class对象的对象名.getDeclaredMethod()  获取指定的私有成员方法对象
class对象的对象名.getDeclaredMethods() 获取所以私有成员方法对象


5.注解在程序中都有哪些用途?
编写文档:通过标识的注解生成文档;
  代码分析:通过标识的注解对代码进行分析;
  编译检查:通过标识的注解让编译器实现基本的编译检查;


6.什么是元注解?
元注解是用于描述注解的注解
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
答:
        黑盒测试:不要写代码,给输入值,看程序是否能够给出输出的期望值;
        白盒测试:需要写代码,关注程序具体的执行流程;

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:
        反射:将类的各个组成部分封装为其他对象,这就是反射机制;
        应用:用于框架的设计;
        好处:
                可以在程序运行过程中,操作这些对象;
                可以解耦,提高程序的课扩展性;

3.获取 Class对象有几种方式?他们的用途都在哪?
答:
        三种:
        Class.forName("全类名"):用于配置文件;
        类名.class:用于参数的传递;
        对象.getClass( );用于对象的获取字节码的方式;

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
答:
        Field[] getDeclaredFields():获取所有的成员变量,不考虑修饰符;
        Field getDeclaredField(String name):获取指定名称的成员变量,不考虑修饰符;

        Method getDeclaredMethod(String name, 类<?>... parameterTypes):获取指定方法,不考虑修饰符;
        Method getDeclaredMethods(String name, 类<?>... parameterTypes):获取所有的成员方法,不考虑修饰符;

5.注解在程序中都有哪些用途?
答:
        编写文档:通过标识的注解生成文档;
        代码分析:通过标识的注解对代码进行分析;
        编译检查:通过标识的注解让编译器实现基本的编译检查;

6.什么是元注解?
答:
        用于描述注解的注解;
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
答:
        黑盒测试:不要写代码,给输入值,看程序是否能够给出输出的期望值;
        白盒测试:需要写代码,关注程序具体的执行流程;

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
答:
        反射:将类的各个组成部分封装为其他对象,这就是反射机制;
        应用:用于框架的设计;
        好处:
                可以在程序运行过程中,操作这些对象;
                可以解耦,提高程序的课扩展性;

3.获取 Class对象有几种方式?他们的用途都在哪?
答:
        三种:
        Class.forName("全类名"):用于配置文件;
        类名.class:用于参数的传递;
        对象.getClass( );用于对象的获取字节码的方式;

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
答:
        Field[] getDeclaredFields():获取所有的成员变量,不考虑修饰符;
        Field getDeclaredField(String name):获取指定名称的成员变量,不考虑修饰符;

        Method getDeclaredMethod(String name, 类<?>... parameterTypes):获取指定方法,不考虑修饰符;
        Method getDeclaredMethods(String name, 类<?>... parameterTypes):获取所有的成员方法,不考虑修饰符;

5.注解在程序中都有哪些用途?
答:
        编写文档:通过标识的注解生成文档;
        代码分析:通过标识的注解对代码进行分析;
        编译检查:通过标识的注解让编译器实现基本的编译检查;

6.什么是元注解?
答:
        用于描述注解的注解;
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:看不到具体执行流程,只关注输出的结果正不正确,不需要写代码进行测试。
白盒测试:能看到具体执行流程,关注程序的效率、逻辑、安全等因素,需要写代码进行测试。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射机制:将类的各个组成部分封装为其他对象。
应用场景:设计一个新的框架时。
使用反射的好处:在程序运行中可以操作对象;降低耦合度。
3.获取 Class对象有几种方式?他们的用途都在哪?
(1) Class.forName("全类名"):将字节码文件加载进内存,返回Class对象,多用于配置文件,读取文件,加载类。
(2) 类名.class:通过类名的属性class获取, 多用于参数的传递;
(3) 对象.getClass():getClass()方法在Object类中定义着。多用于对象的获取字节码的方式。

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
(1)Field[] getDeclaredFields()  获取所有的成员变量,不考虑修饰符
         Field getDeclaredField(String name)  获取指定的成员变量,不考虑修饰符
(2)setAccessible(true):暴力反射
         get(Object obj)获取成员变量
5.注解在程序中都有哪些用途?
(1)编写文档:通过代码里标识的注解生成文档
(2)代码分析:通过代码里标识的注解对代码进行分析
(3)编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查
6.什么是元注解?
元注解是用于描述注解的注解,一个注解可以有多个元注解。
回复 使用道具 举报

1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
白盒测试:需要写代码的。关注程序具体的执行流程。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射是框架设计的灵魂
好处:
可以在程序运行过程中,操作这些对象。
可以解耦,提高程序的可扩展性。
3.获取 Class对象有几种方式?他们的用途都在哪?
获取Class对象的方式:
Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
多用于配置文件,将类名定义在配置文件中。读取文件,加载类
类名.class:通过类名的属性class获取
多用于参数的传递
对象.getClass():getClass()方法在Object类中定义着。
多用于对象的获取字节码的方式
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
1. 获取成员变量们
Field[] getFields() :获取所有public修饰的成员变量
Field getField(String name)   获取指定名称的 public修饰的成员变量
Field[] getDeclaredFields()  获取所有的成员变量,不考虑修饰符
Field getDeclaredField(String name)  
获取构造方法们
Constructor<?>[] getConstructors()  
Constructor<T> getConstructor(类<?>... parameterTypes)  
Constructor<T> getDeclaredConstructor(类<?>... parameterTypes)  
Constructor<?>[] getDeclaredConstructors()  
获取成员方法们:
Method[] getMethods()  
Method getMethod(String name, 类<?>... parameterTypes)  
Method[] getDeclaredMethods()  
Method getDeclaredMethod(String name, 类<?>... parameterTypes)  
获取全类名        
String getName()
5.注解在程序中都有哪些用途?
概念:说明程序的。给计算机看的
编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
代码分析:通过代码里标识的注解对代码进行分析【使用反射】
编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】
6.什么是元注解?
元注解:用于描述注解的注解
回复 使用道具 举报
1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,直接给值看程序是否能够输出想要的值,不关注过程只看结果
白盒测试:需要写代码,关注程序的具体的执行流程

2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射就是把类中各个组成部分封装成一个个对象
Java之前是静态类型语言,只从加入反射机制之后让Java在程序运行过程中也可以操作这些对象还可以解耦提高程序的可扩展性

3.获取 Class对象有几种方式?他们的用途都在哪?
获取Class对象有三种方式:
①直接通过静态方法 Class.forName():将字节码文件加载进内场返回Class对象
用途:对用于配置文件,将类名定义在配置文件中。读取文件,加载类
②通过类名.class:类名的属性class获取
用途:多用于参数的传递
③通过对象.getClass()
用途:多用于对象的获取字节码的方法

4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
可以通过两种方式获取被私有的获取成员变量和成员方法对象:
①通过方法getDeclaredField(s)、getDeclaredConstructor(s)、getDeclaredMethod(s)获取全部的后面添加s
②通过暴力反射方法:setAccessible(true)

5.注解在程序中都有哪些用途?
注解在程序中的用途:①编写文档:标识的注解来生成文档 ②代码分析:标识的注解对代码进行分析 ③标识的注解让编译器实现基本的编译检查

6.什么是元注解?
元注解:用来描述注解的注解
回复 使用道具 举报
本帖最后由 Wyt1935 于 2019-4-7 21:51 编辑



吴元陶:

1.黑盒测试和白盒测试的区别?
黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
白盒测试:需要写代码的。关注程序具体的执行流程。
2.什么是反射?反射在程序中的应用场景,我们为什么要使用反射?
反射:将类的各个组成部分封装为其他对象,这就是反射机制
反射是框架设计的灵魂
好处:
可以在程序运行过程中,操作这些对象。
可以解耦,提高程序的可扩展性。
3.获取 Class对象有几种方式?他们的用途都在哪?
获取Class对象的方式:
Class.forName("全类名"):将字节码文件加载进内存,返回Class对象
多用于配置文件,将类名定义在配置文件中。读取文件,加载类
类名.class:通过类名的属性class获取
多用于参数的传递
对象.getClass():getClass()方法在Object类中定义着。
多用于对象的获取字节码的方式
4.如何获取Class对象中被私有的成员变量对象和成员方法对象?
1. 获取成员变量们
Field[] getFields() :获取所有public修饰的成员变量
Field getField(String name)   获取指定名称的 public修饰的成员变量
Field[] getDeclaredFields()  获取所有的成员变量,不考虑修饰符
Field getDeclaredField(String name)  
获取构造方法们
Constructor<?>[] getConstructors()  
Constructor<T> getConstructor(类<?>... parameterTypes)  
Constructor<T> getDeclaredConstructor(类<?>... parameterTypes)  
Constructor<?>[] getDeclaredConstructors()  
获取成员方法们:
Method[] getMethods()  
Method getMethod(String name, 类<?>... parameterTypes)  
Method[] getDeclaredMethods()  
Method getDeclaredMethod(String name, 类<?>... parameterTypes)  
获取全类名        
String getName()
5.注解在程序中都有哪些用途?
概念:说明程序的。给计算机看的
编写文档:通过代码里标识的注解生成文档【生成文档doc文档】
代码分析:通过代码里标识的注解对代码进行分析【使用反射】
编译检查:通过代码里标识的注解让编译器能够实现基本的编译检查【Override】
6.什么是元注解?
元注解:用于描述注解的注解
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马