黑马程序员技术交流社区

标题: super.getClass()方法调用 [打印本页]

作者: 李鑫    时间: 2012-6-6 07:54
标题: super.getClass()方法调用
  1. import java.util.Date;
  2. public  class Test extends Date{
  3.         public static void main(String[] args) {
  4.                 new Test().test();
  5.         }
  6.        
  7.         public void test(){
  8.                 System.out.println(super.getClass().getName());
  9.         }
  10. }
复制代码
为什么是test?而不是test的类名?
作者: 李鑫    时间: 2012-6-6 07:57
我觉得是test.而我同学觉得是test类名,我又不知道怎么跟他说,请高手说详细些哈
作者: 吴小铁你好    时间: 2012-6-6 08:43
返回的结果应该是Test类名,你可以查看ApI帮助文档中class类中getName()方法,
该方法返回的是Class对应的实体,而该类中Class对应的实体为Test。
作者: 赵兵锋    时间: 2012-6-6 10:10
输出的是test?不会吧,这里应该输出Test。
作者: 张天天    时间: 2012-6-6 12:02
package luntantest;

import java.util.Date;

public  class Test2 extends Date{

        public static void main(String[] args) {

                new Test2().test();

        }

        
        public void test(){

                System.out.println(super.getClass().getName());

        }

}
输出结果为
luntantest.Test2
楼主的结果是错的
作者: 宋浩    时间: 2012-6-6 12:21
应该是Test。。




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