1.什么是反射
反射允许对封装类的成员变量,成员方法和构造函数的信息进行编程访问
2.获取class对象的三种方式
(1)Class.forName("全类名") 源代码阶段使用
(2)类名.class 加载阶段使用
(3)对象.getClass() 运行阶段使用
全类名:包名加类名
源代码阶段(java文件或者是class文件)
加载阶段(把class文件加载到内存中)
运行阶段(有实体类对象)
package com.wyx.fanshe;
public class Demo1 {
public static void main(String[] args) throws ClassNotFoundException {
//1.第一种获取方式
Class aClass = Class.forName("com.wyx.fanshe.Student");
System.out.println(aClass);
//2.第二种方式
Class studentClass = Student.class;
System.out.println(studentClass);
//3.第三种方式
Student student = new Student();
Class aClass1 = student.getClass();
System.out.println(aClass1);
}
}