1.反射获取对象的三种方法
推荐方式三(因为前两种方式编译的时候都要求有Student类,此方式不需要,没有也不会报错)
1.获取类对象
1.方式一:对象获取
2.方式二:类名.class
3.方式三:class.forName(),(推荐)
2.代码
//反射操作1,获取类对象三种方式
public static void reflecOp1() throws Exception {
//1.获取类对象
//1.1方式一:通过对象获取
Student stu1 = new Student("夏雨荷",12,"女");
Class<? extends Student> class1 = stu1.getClass();
System.out.println(class1.hashCode());
//1.2方式二:类名.class ( Class<? extends Student> 或者 Class<?> )
Class<? extends Student> class2 = Student.class;
System.out.println(class2.hashCode());
//1.3方式三:class.forName() 推荐,耦合性低,灵活
Class<?> class3 = forName("d01_student.Student");
System.out.println(class3.hashCode());
}
3.运行结果
460141958
460141958
460141958
Process finished with exit code 0