------- android培训、java培训、期待与您交流! ----------
java_反射
反射就是把java类中的各个成分映射出相应的java类,
有三种方式来将某个类映射出字节码文件
1,类名.class
2,对象.getclass()
3,class.forname(类完整的路径)
我们获得某个类的的构造方法
class.forName("java.lang.String").newInstance();
调用String的空的无惨的构造方法
获得某个类的成员变量:
class person{
int age=9;
}
Filed age = Class.forName(person).getFiled("age');
system.out.println(age);
获得方法:
class person{
public void eat(){
system.out.println("好吃")
}
}
Method eat = Class.forName(person).getMethod();
system.out.println(eat.invoke());
反射的好处:
比如我们在调用某个类的构造方法的时候我们并不知道他传进来的是一个什么类。所以我们就不能new这个类,
但是用到反射,我们可以将那个类付给一个配置文件,我们调用这个配置文件中的name 如:name=java.lang.String;
然后在class.forname(name).newinstance(),调用它的构造方法,
我们传进什么类就是什么类的对象