读书人

Java 获取Class的三种形式

发布时间: 2012-12-24 10:43:14 作者: rapoo

Java 获取Class的三种方式
package freewill.classObject;

import freewill.objectequals.Employee;

/**
* @author freewill
* @desc 获取Class的三种方式
*/
public class Demo {

/**
* @desc 方法1:通过getClass获取
* @return Class
*/
public Class<Employee> getClass1() {
Employee e = new Employee();
@SuppressWarnings("unchecked")
Class<Employee> cl = (Class<Employee>) e.getClass();
return cl;
}

/**
* @desc 方法2:通过静态方法Class.forName获取
* @return Class
* @throws ClassNotFoundException
*/
public Class<Employee> getClass2() throws ClassNotFoundException {
String classname = "freewill.objectequals.Employee";
@SuppressWarnings("unchecked")
Class<Employee> cl = (Class<Employee>) Class.forName(classname);
return cl;
}

/**
* @desc 方法3:通过类.class属性获取
* @return Class
*/
public Class<Employee> getClass3() {
Class<Employee> cl = Employee.class;
return cl;
}

public static void main(String[] args) throws ClassNotFoundException {
Demo demo = new Demo();
Class<Employee> class1 = demo.getClass1();
System.out.println(class1.getName());

Class<Employee> class2 = demo.getClass2();
System.out.println(class2.getName());

Class<Employee> class3 = demo.getClass3();
System.out.println(class3.getName());
}
}

读书人网 >编程

热点推荐