黑马程序员技术交流社区

标题: 代码最后输出的结果为什么是Date 相信过程解释一下 用到 [打印本页]

作者: 442851994    时间: 2012-10-24 16:48
标题: 代码最后输出的结果为什么是Date 相信过程解释一下 用到
本帖最后由 442851994 于 2012-11-1 18:17 编辑

import java.util.Date;
public class Test extends Date{
        public static void main(String[] args){
               new Test().test();
   }
          public void test(){
               System.out.println(super.getClass().getName());
    }
}
为什么这个输出结果是Test   求结果详细解释一下。
作者: 程杰    时间: 2012-10-24 17:05
首先是继承了父类Date,所以就是Date。getclass。这句话意思是调用Date对象的getClass方法将返回用于封装Date类信息的Class对象。后面有.getName,即返回所封装的类的名称。
作者: 范贞亮    时间: 2012-10-24 17:08
这个题其实是调用父类的getClass()方法再得到 自己 class的名字 , 而不是得到父类的字节码的名字 如要得到 getClass().getSuperClass().getName(); 用这样就行了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2