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