class A {
public void fun1() {
System.out.println(" A ");
}
public void fun2() {
fun1();
}
}
class B extends A{
public void fun1() {
System.out.println(" B");
}
}
public class Test {
public static void main(String[] args) {
new B().fun1();
new B().fun2();
}
}
运行后的结果为:
B
B
new B().fun2(),是调用了从A继承来的方法fun2(),正如fun2()放里面看到的,又调用fun1()方法,最后输出的结果为重写后B类fun1()的结果而不是父类A里面fun1()的结果,这是为什么 |