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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Fu
{
        int num=4;
        void show()
        {
                System.out.println("showFu");
        }
}
class Zi extends Fu
{
        int num=5;
        void show()
        {
                System.out.println("showZi");
                System.out.println(this.num);
        }
}
public class Demo {
        public static void main(String[] args)
        {
                Fu f=new Zi();
                f.show();
                System.out.println(f.num);
        }
}

this代表一个本类对象的引用,f不是提升成了Fu类么
子类show()方法中的this.num为什么不是4

1 个回复

倒序浏览
创建子类实例的时候就调用了子类的构造方法  继而调用父类构造方法 然后初始化num = 4; 父类构造方法完毕,执行子类构造方法 num = 5; 所以num = 5
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马