-
反射的定义及概述
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法(类名,方法名,参数类型,返回值类型);对于任意一个对象,都能够调用它任意的一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
总结来说就是,反射就是把java类中的各种成分映射成一个个 java对象例如:一个类有:成员变量、方法、构造方法,包等信息,利用反射技术可以对一个类进行解剖,把各个组成部分映射成一个个对象
-
反射的相关函数介绍:
- 获取类的三种方法
-
第一种方式-->Class.forName("类名字符串")
-
Class c1=Class.forName("com.edu.Student");
-
-
第二种方式-->先创建对象,再用对象调用getClass()方法,即实例对象.getClass().返回运行时类
-
Student s=new Student();
-
Class c2 = s.getClass();
-
-
第三种方式-->类名.class。返回Class的对象。(每个类都有class属性)
-
Class c2 = s.getClass();
(!!!Class类用于表示.class文件(字节码),获取某个类时的前提条件就是获取该类的Class)
-
-
- 获取属性
- 获取方法
- 获取构造函数
- 获取其他信息
- 获取类的三种方法
-
具体代码实现:
- 引入工程截图
-
- 获取类的类名
- 实体类Student
- 略
- 获取代码实现
- 实体类Student
- 获取类的构造方法
- Student类的构造方法
-
- 获取的代码实现
-
- Student类的构造方法
- 获取类的方法
- Student类的方法
-
- 获取的代码实现
-
- Student类的方法
- 获取类的属性
- Student类的属性
-
- 获取属性的代码实现
-
- Student类的属性
- 获取类的其他信息
- 获取的代码实现
-
- 获取的代码实现
- 引入工程截图
参考文献:
- https://blog.csdn.net/sinat_38259539/article/details/71799078
- https://blog.csdn.net/ylyang12/article/details/53469957
- https://blog.csdn.net/qq_24341197/article/details/77964172
备注说明:
此DSCN是作者根据以上几篇文章进行编辑的,作为自己的学习笔记,也自己在编辑器上进行实际操作的,并无刻意抄袭或者盗取别人劳动成功的想法。谢谢!