当子类没有重写父类的方法的时候,子类的super调用的是父类方法吗?或者说当父类的非私有方法没有被子类重写,子类是拥有该方法只是没有显示出来吗?相关代码importjava.util.Date;publicclassTestextendsDate{publicstaticvoidmain(String[]args){newTest().test();}publicvoidtest(){System.out.println(super.getClass().getName());}}题目来源及自己的思路百度了这题的答案,原因是getclass方法是Object类的一个final方法,子类不能够重写,getclass方法返回的是一个当前运行类的Class对象。不能理解为什么super指向的运行时的对象是Test类
2 回答
宝慕林4294392
TA贡献2021条经验 获得超8个赞
super指向的是Date,super.getClass()方法继承于Object的publicfinalnativeClass>getClass();//返回的是运行时的对象Test所以打印的是test的包名
添加回答
举报
0/150
提交
取消