首页 > 代码库 > java的class类

java的class类

 1 package test;
 2 import java.util.Date; 
 3 public class SuperTest extends Date{ 
 4     private static final long serialVersionUID = 1L; 
 5     private void test(){ 
 6        System.out.println(super.getClass().getName()); 
 7     } 
 8       
 9     public static void main(String[]args){ 
10        new SuperTest().test(); 
11     } 
12 }

输出结果为:test.SuperTest

分析:super.getClass() 得到的依然是runtime当前类,若要得到真正的父类,需要用super.getClass().getSuperclass()

虽然这里写的是super,但其实用this也一样
 
java的Class类是java反射机制的基础,通过Class类我们可以获得关于一个类的相关信息。java.lang.Class是一个比较特殊的类,它用于封装被装入到JVM中的类(包括类和接口)的信息。当一个类或接口被装入的JVM时便会产生一个与之关联的java.lang.Class对象,可以通过这个Class对象对被装入类的详细信息进行访问。

java的class类