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