第10章 介面 繼承與多型 多型

2021-09-08 11:02:14 字數 729 閱讀 1995

利用多型可以使程式具有良好的擴充套件性,並可以對所有類物件進行通用的處理。

如果定義乙個四邊形類,讓它處理所有繼承該類的物件,根據「向上轉型」原則可以使每個繼承四邊形類的物件作為draw()方法的引數,然後在draw()方法中做一些限定就可以根據不同圖形類物件繪製相應的影象,從而更為通用的四邊形類來取代具體的正方形類和平行四邊形類。這樣處理能夠很好地解決**冗餘問題,同時也易於維護,因為可以加入任何繼承父類的子類物件,而父類方法也無需修改。

package

ten;

public

class

quadrangle

}public

static

void

main(string args)

}class square extends

quadrangle

}class parallelogramgle extends

quadrangle

}

執行結果如圖:

從本例項的執行結果中可以看出,以不同類物件為引數呼叫draw()方法可以處理不同的圖形問題。使用多型節省了開發和維護的時間,因為程式設計師無須在所有子類中定義執行相同功能的方法,避免了大量重複**的開發,同時只要例項化乙個繼承父類的子類物件即可呼叫相應的方法,這裡只要維護父類中的這類方法即可。

介面,繼承與多型

1,多型和介面的作用 多型機制的使用可以動態調整物件的呼叫,降低物件之間的依存關係 介面被用來建立類與類之間關聯的標準 2,super關鍵字的作用 用super 呼叫父類的構造方法,super 關鍵字呼叫父類的成員變數和方法 3,重寫,重寫可以選擇擴大方法的修飾許可權 4,當例項化乙個子類物件時,父...

繼承 多型與介面

一 概念 繼承 單繼承 表示存在於物件導向程式中兩個類之間的一種關係,當乙個類充當另乙個類的子類時就自動擁有了另乙個類的所有非私有屬性和方法,我們就稱這兩個類具有繼承關係。二 域的繼承與隱藏 1.子類可以無條件的繼承父類的非私有域,即父類的非私有域實際是各個子類都擁有的域。2.子類還可以定義乙個和從...

繼承 多型 介面

多型 編譯階段 編譯期間編譯器可以根據選擇引數的型別來選擇使用哪個方法,是因為方法已經通過方法的過載 在同乙個類 裡提前寫好。程式在編譯時,會在編譯型別中檢查是否具有所呼叫的方法。如果編寫 時,使用引用變數呼叫子類中的特有方法,或者呼叫過載了父類中的方法,而父類中找不到該方法,則會報編譯錯誤 執行階...