一、反射的作用
1、反编译:从.class文件到.java文件。
2、通过反射机制访问java类的属性,方法,构造方法等。
创建一个普通类:
class User{
String name;
User(){}
public void m1(){}
}
以前我们访问属性name,会这样做: User u = new User(); u.name
二、获取Class类型对象的三种方式
1、先创建个普通类
public class Employee{
//Field 属性
private String name;
//Constructor 构造方法
public Employee(){}
public Employee(Sring name){
this.name = name;
}
//Method 方法
public void work(){
System.out.println(name + “在工作!”);
}
}
2、获取Class类型对象:3种方式
Employee.java编译生成Employee.class文件,现在通过反射机制,在反射机制中,Class代表的就是Employee.class这个文件整个的东西。
以下c1,c2,c3指向的对象代表的都是Employee这个类。
public class ReflectTest{
public static void main(String[] args) throws Exception{
//第一种方式: Class.forName()