class Parent
{
private void method1()
{
System.out.println("Parent's method1()");
}
public void method2()
{
System.out.println("Parent's method2()");
method1();
}
}
class Child extends Parent
{
public void method1()
{
System.out.println("Child's method1()");
}
}
class test {
public static void main(String args[])
{
Parent p = new Child();
p.method2();
}
}
我很困惑爲什麼在調用method1()時會在Parent :: method2()中調用父類method1()而不是Childs method1?我發現只有當method1()是私有的時候纔會發生這種情況。有人可以解釋我爲什麼嗎?
謝謝你。在Java中混淆調用方法
爲他的示例,可能以及在列表中添加「friendly」。 – kevpie 2011-03-14 00:24:44
@kevpie友好嗎? – 2011-03-14 00:25:25
我想他是朋友:)感謝探索馬克艾略特 – Kobe 2011-03-14 00:28:22