3
假設我有這三類:我可以從super超級方法調用重寫的方法嗎?
class Foo {
void fn() {
System.out.println("fn in Foo");
}
}
class Mid extends Foo {
void fn() {
System.out.println("fn in Mid");
}
}
class Bar extends Mid {
void fn() {
System.out.println("fn in Bar");
}
void gn() {
Foo f = (Foo) this;
f.fn();
}
}
public class Trial {
public static void main(String[] args) throws Exception {
Bar b = new Bar();
b.gn();
}
}
是否可以調用Foo
的fn()
?我知道我的解決方案gn()
不起作用,因爲this
指向Bar
類型的對象。
這是甚至編譯? – sll
當然!問題是什麼?? –
我忽略了這些方法是私人的 – sll