public class Test03 {public static void main(String[] args) throws ClassNotFoundException {Person person = new Student();System.out.println("这个人是:"+person.name);// 方式一: 通过对象获取Class c1 = person.getClass();System.out.println(c1.hashCode());// 方式二:forname 获得Class c2 = Class.forName("reflection.Student");System.out.println(c2.hashCode());// 方式三: 通过类名.class 获得Class c3 = Student.class;System.out.println(c3.hashCode());// 方式四: 基本内置类型的包装类都有一个Type属性Class c4 = Integer.TYPE;System.out.println(c4);// 获得父类类型Class c5 = c1.getSuperclass();System.out.println(c5);}
}class Person{public String name;public Person() {}public Person(String name) {this.name = name;}@Overridepublic String toString() {return "Person{" +"name='" + name + '\'' +'}';}
}class Student extends Person{public Student(){this.name = "学生";}
}class Teacher extends Person{public Teacher() {this.name = "老师";}
}
https://www.bilibili.com/video/BV1p4411P7V3?p=7