当前位置: 代码迷 >> J2SE >> 超类调用步骤求解
  详细解决方案

超类调用步骤求解

热度:7587   发布时间:2013-02-25 00:00:00.0
超类调用方法求解
Java code
class A{A(int a){me();//...}//...public void me(){//...}}class B extends A{B(int a){super(a);}public void me(){//...}}


如果实例化B
B b=new B(10);
这时为什么调用的会是B中的me方法?求解

------解决方案--------------------------------------------------------
因为重写了
------解决方案--------------------------------------------------------
探讨

是不是就是说:
子类有覆盖父类的函数就会调用子类的
如果没有覆盖就还是会调用父类的

------解决方案--------------------------------------------------------
可以理解为就近原则 先看自己有没有 没有了再去找老子的
------解决方案--------------------------------------------------------
子类重写父类方法,子类对象调用的就是子类重写的方法了。
看基础书,上面都有讲。
------解决方案--------------------------------------------------------
重写,并且函数没重载
  相关解决方案