【发布时间】:2015-12-09 14:33:18
【问题描述】:
我有这些课程:
class A {
public void f() { System.out.println("f() in A"); }
public void g() { System.out.println("g() in A"); f(); }
}
class B extends A {
public void f() { System.out.println("f() in B"); }
}
为什么
B b = new B();
A a = b;
a.g();
打印出来
g() in A
f() in B
而不是
g() in A
f() in A
我有什么遗漏吗?
【问题讨论】:
-
了解多态性和方法覆盖。
标签: java class inheritance