java 多態產生的疑問
對于標準的多態示例程序Class A {
public void test(){
System.out.println("A");
}
}
Public Class B extends A{
//@override 有無都不會報錯
public void test(){
System.out.println("B");
}
public static void main(String[] arguments){
A a=new B();
a.test();
}
}
/*output:
B
*///:~
這個程序很好的示意了向上轉型后A對B實例的test的調用。
然而并不是所有的類型的方法都能夠支持多態。對于是private的方法,我們應該格外注意。

package cn.edu.neu.deepweb407.gui;
public class A {
private void test(){
System.out.println("A");
}
public static void main(String[] arg1s) {
A a=new B();
a.test();
}
}
class B extends A{
public void test(){
System.out.println("B");
}
}

17

18
