繼承與介面的如何合理設計

2021-08-17 02:44:35 字數 501 閱讀 9011

合理的框架設計,能提高**利用率,增加框架層間的耦合性,加大開發人員的效率。

如何使用繼承extends和implement實現呢,以下幾點注意事項:

1、當重複**存在於同一物件中時,該**多次呼叫或者重複出現,我們可以把這段**抽取為方法。

2、當重複**不在同一物件中時,那就運用抽取類的手段將重複的部分抽取到乙個工具類中,然後被呼叫。

3、當重複**不在同一物件中時,如果這些重複**存在著較強的業務相關性,可將這些**提取並封裝成乙個實體類。

4、當重複**不在同一物件中時,也可以把相同的部分抽取為父類,不同的部分的留在原來的類中,該父類可供其他類所繼承。

5、當出現繼承氾濫時,將不同的部分用乙個介面與多個實現來解決,也就是組合。

6、當重構的**被相同部分和不同部分分割成了好多碎片的時候,也就是說相同和不相同的夾雜,而且這個時候多半有順序。可以先定義乙個父類,分解成數個有順序的方法(每個方法是乙個步驟),**中相同的部分寫在父類中,不同的部分分別在子類中實現各自的步驟。

繼承與介面的區別

一.語法層次上 如上所述。二.設計層次上 1 抽象層次不同。抽象類是對類抽象,而介面是對行為的抽象。抽象類是對整個類整體進行抽象,包括屬性 行為,但是介面卻是對類區域性 行為 進行抽象。2 跨域不同。抽象類所跨域的是具有相似特點的類,而介面卻可以跨域不同的類。我們知道抽象類是從子類中發現公共部分,然...

繼承與介面的區別

類繼承 子類完全繼承父類特點 抽象類繼承 繼承時抽象的部分不同的子類可以有不同的實現 介面繼承 所有成員在子類都可以有不同的實現 至於為什麼要用介面而不是抽象類 這要看二者適用的情況 當個性大於共性時,適合介面,如鳥和飛機,適合抽象出乙個飛的介面 當共性大於個性時,適合抽象類,如老鷹和麻雀,適合抽象...

Java 繼承與介面的關係

在看netty中nioeventloop的uml圖時,感覺非常複雜,如下圖所示 找不到重點,找不到主線,此時內心生無可戀。從而,激發出困擾了我很久的乙個問題 到底繼承與介面 啥關係?這個問題,前幾天也請教過同事,也並沒有說出什麼關鍵點來。然後,對著此圖沉思了良久,終於悟出一點自己的見解 以下僅供參考...