來源:https://blog.csdn.net/wendizhou/article/details/73733061
編譯時多態:主要是方法的重載,通過參數列表的不同來區分不同的方法。
運行時多態:也叫作動態綁定,一般是指在執行期間(非編譯期間)判斷引用對象的實際類型,根據實際類型判斷並調用相應的屬性和方法。主要用於繼承父類和實現接口時,父類引用指向子類對象。
例如:
public class PolymorphismTest { public static void main(String[] args) { //運行時多態 SuperClass clazz = new SubClass(); clazz.method(); } } class SuperClass { public SuperClass() { System.out.println("父類的構造方法"); } public void method() { System.out.println("父類的method()"); } } class SubClass extends SuperClass { public SubClass() { System.out.println("子類的構造方法"); } @Override public void method() { System.out.println("子類的method()"); } }