获取类的名称

 1 package test;
 2 
 3 import java.util.Date;
 4 
 5 public class SuperTest extends Date{
 6  
 7     private void test(){
 8         
 9         System.out.println(new Date().getClass().getName());
10         System.out.println(this.getClass().getName());
11         System.out.println(this.getClass().getSuperclass().getName());
12         System.out.println(super.getClass().getName());
13         System.out.println(super.getClass().getSuperclass().getName());
14     }
15     
16     public static void main(String[] args) {
17         new SuperTest().test();
18 
19     }
20 
21 }

可以通过getClass().getName()获取对象的类名称,输出的结果如下

java.util.Date
test.SuperTest
java.util.Date
test.SuperTest
java.util.Date

最后两个的输出怎么好像不对啊!其实这就是正确的输出结果,getClass()的作用是Returns the runtime class of this Object. 因此super.getClass获取的是当前的this对象的class,所以结果没问题。

posted on 2017-05-07 20:24  风之阡陌  阅读(291)  评论(0编辑  收藏  举报

导航