java反射机制
# 什么是java反射?
java反射机制是在运行状态下,对于任意一个类,都能获取其所有方法和属性(动态获取信息);对于任意一个对象,都能调用它任意一个方法和属性(动态调用)。
# java类的三个加载阶段
1)Source源代码阶段:生成字节码文件
2)Class类对象阶段:生成类对象
3)Runtime运行时阶段:new方法创建实例对象
# 对应上述加载阶段的反射机制获取
1.项目中创建一个可使用的类:在src的java文件下,创建多层文件“class0908”—>“reflection”—>“Student”
package class0908.reflection.Student; public class testStudent { private String sno; private String sna; public testStudent() { System.out.print("java反射机制"); } }
2.主函数中使用反射机制获取
1)在源代码阶段(通过相对路径):
Class<?> sClass=Class.forName("class0908.reflection.Student.testStudent");
System.out.println(sClass);
System.out.println(sClass.hashCode());
2)在类对象阶段(通过类名):
Class<testStudent> StringClass=testStudent.class; System.out.println(StringClass); System.out.println(StringClass.hashCode());
3)在实例化对象阶段(通过建立对象):
testStudent student =new testStudent(); System.out.println(student); System.out.println(student.hashCode());
浙公网安备 33010602011771号