A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lostnotes 中级黑马   /  2015-4-14 21:54  /  730 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class ExtendsDemo5{
  2.         public static void main(String[] args){
  3.                 Zi z = new Zi();
  4.                 z.show();
  5.         }
  6. }
  7. class Fu{
  8.         Fu(){
  9.                 show();
  10.         }
  11.         void show(){
  12.                 System.out.println("fu -- show");
  13.         }
  14. }
  15. class Zi extends Fu{
  16.         int num = 8;
  17.         Zi(){
  18.                 super();
  19.                 System.out.println("coder---"+num);
  20.         }
  21.         void show(){
  22.                 System.out.println("zi -- show---"+num);
  23.         }
  24. }
复制代码

为什么父类构造函数中调用的show方法是子类中复写的show方法呢?

2 个回复

倒序浏览
在你创建Zi时,super了父类的构造,this.show();,this代表了当前对象Zi,而不是Fu
回复 使用道具 举报
因为父类的show方法被复写了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马