package cn.itcast.reflect.demo;
import cn.itcast.bean.demo.Person;
/**
*
* 获取Class对象的3中方法:
*
*
* */
public class ReflectDemo1 {
public static void main(String[] args) throws ClassNotFoundException {
// getClassObjectMethod_1();
// getClassObjectMethod_2();
getClassObjectMethod_3();
}
/*
* 方法三:通过给定的类名的字符串名称就可以获取class对象,更为扩展
*
* */
public static void getClassObjectMethod_3() throws ClassNotFoundException {
String classname="cn.itcast.bean.demo.Person";
Class class1=Class.forName(classname);
Class class2=Class.forName(classname);
System.out.println(class1==class2);
}
/*
* 方法二:任何数据类型都具备一个静态属性.class来获取Class对象
* 相对简单,但是还是要明确到类中的静态成员,还是不够扩展
* */
public static void getClassObjectMethod_2() {
Class class1=Person.class;
Class class2=Person.class;
System.out.println(class1==class2);
}
/*方法一:
* 通过Object类中的getClass方法
* 想用这种方式,必须明确具体的类
*
* */
public static void getClassObjectMethod_1() {
Person p=new Person();
Class class1=p.getClass();
Person p2=new Person();
Class class2=p2.getClass();
System.out.println(class1==class2);
}
}
java反射机制——三种获取class对象的方法
猜你喜欢
转载自blog.csdn.net/TDOA1024/article/details/82918606
今日推荐
周排行