1、
public class A {
public void fun(){
System.out.println("A類中的方法");
}
}
public class B extends A {
public void fun() {
System.out.println("B類中的方法");
}
}
public class Program {
public static void main(String[] args) {
B b = new B();
b.fun();
}
}
運行結果:
B類中的方法
2、
public class Program {
public static void main(String[] args) {
A a = new B();
a.fun();
}
}
運行結果:
B類中的方法
3、
public class Program {
public static void main(String[] args) {
A a = new B();//向上轉型
B b = (B) a;//向下轉型
b.fun();
}
}
運行結果:
B類中的方法
引用畢向東教程的一段話:
1.成員變量:編譯和運行都參考左邊。
2.靜態函數:編譯和運行都看左邊
3.成員函數(非靜態):編譯看左邊,運行看右邊