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

© xman20 中级黑马   /  2015-3-27 22:09  /  788 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如果子类继承了父类,但是如果没有复写父类的方法, 子类调用方法时,假设该方法中使用了父类的成员变量
Class Fu()
{
  int x =3;
  int y =4;
  show()
  {
    System.out.println(x+y);
   }
}

class Zi extends Fu
{
int x=2;
int y=5;
public static void main(String[] args)
{
show();
}
}

打印结果是7,意思是如果没有复写,调用父类方法,然后也是用的父类的成员变量?而不是用子类的成员变量?

那天做复习遇到的,不太理解。

4 个回复

倒序浏览
你的变量难道被复写了?
回复 使用道具 举报
如果是要使用参数,最好传递参数过去,如果没传递,方法没重写,用的父类的方法,也就同样用的父类的参数.
回复 使用道具 举报
圣光忏悔 发表于 2015-3-27 22:44
如果是要使用参数,最好传递参数过去,如果没传递,方法没重写,用的父类的方法,也就同样用的父类的参数. ...

多谢答案回复
回复 使用道具 举报
谢鸿 发表于 2015-3-27 22:44
你的变量难道被复写了?

没复写用的还是父类的变量
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马