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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

class Fu {
   int i=6;
   void show (){
    System.out.println(i);
   }
}

class Zi extends Fu {
   int i=10;
}

class Test {


public static void main(String[] args) {
  Fu f=new Fu();
  f.show();
  Zi z=new Zi();
  z.show();
}
}

大家猜猜结果咋样

评分

参与人数 1技术分 +1 收起 理由
Silent_memory + 1 很给力!

查看全部评分

17 个回复

倒序浏览
结果是:6 6,这个比较简单,创建的对象调用的都是父类的show()方法,子类的变量  i 是不能够穿越的!
回复 使用道具 举报
结果是 6 6
回复 使用道具 举报
这里不存在方法的覆盖,继承的是父类中的方法 ,而方法是动态绑定的 所以结果是6,6
回复 使用道具 举报
这个好看,6    6
回复 使用道具 举报
结果是6,6
回复 使用道具 举报
6 6 覆盖的只是方法,变量是不会被覆盖的
回复 使用道具 举报
擦 大家基本功都这么强啊
回复 使用道具 举报
6,6我也明白了
回复 使用道具 举报
看了回答 忽然明白了
回复 使用道具 举报
l939 中级黑马 2014-5-25 21:32:20
11#
果断6 和6 啊,又没有覆盖父类的show方法
回复 使用道具 举报
学习了,又一次加深印象了。。。
回复 使用道具 举报
子类变量和父类方法又没啥关系,再说了 6 6比较好看的说
回复 使用道具 举报
看了回答总算明白了,看来鄙人的基本功还有待加强啊
回复 使用道具 举报
就这问题,也能给评分,我表示版主偏心啊!!!:Q
回复 使用道具 举报
两个都是6,6,第二个调用的仍然是父类变量
回复 使用道具 举报
这个我也会,  6 ,6 。
回复 使用道具 举报
66666666666666666666
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马