舉例說明什麼情況下會更傾向於使用抽象類而不是接口?
接口和抽象類都遵循”面向接口而不是實現編碼”設計原則,它可以增加代碼的靈活性,
可以適應不斷變化的需求。下面有幾個點可以幫助你回答這個問題:
在 Java 中,你只能繼承一個類,但可以實現多個接口。所以一旦你繼承了一個類,你就
失去了繼承其他類的機會了。
接口通常被用來表示附屬描述或行爲如:Runnable、Clonable、Serializable 等等,因此當你
使用抽象類來表示行爲時,你的類就不能同時是 Runnable 和 Clonable(注:這裏的意思是指
如果把 Runnable 等實現爲抽象類的情況),因爲在 Java 中你不能繼承兩個類,但當你使用
接口時,你的類就可以同時擁有多個不同的行爲。
在一些對時間要求比較高的應用中,傾向於使用抽象類,它會比接口稍快一點。
如果希望把一系列行爲都規範在類繼承層次內,並且可以更好地在同一個地方進行編碼,
那麼抽象類是一個更好的選擇。有時,接口和抽象類可以一起使用,接口中定義函數,而
在抽象類中定義默認的實現
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
通過MVEL表達式和Apache Chain職責鏈模式解耦MQ消息處理節點的實踐應用
原創
2024-05-16 23:56:24
京東秒送售後系統退款業務重構心得| 京東零售技術團隊
原創
2024-05-16 23:56:23
go-kit學習指南 - 中間件
原創
2024-05-14 12:17:31
Spring知識點詳解(源碼筆記+思維導圖),AOP和IOC
osc_r0irdqn7
2024-05-14 01:47:38
DDD在大衆點評交易系統演進中的應用
原創
2024-05-10 21:20:48
系統整容紀:責任鏈設計模式的應用實戰(爆燈了,研發工期由45天降爲1天)
原創
2024-04-28 11:17:20
工程中實踐的微服務設計模式
原創
2024-04-19 23:17:23
DDD落地指南-架構師眼中的餐廳
原創
2024-04-16 11:16:34
WinForm應用實戰開發指南 - 如何實現類似事件總線的消息處理?
界面開發小八哥
2024-04-15 11:35:27
萬字長文,聊聊我在錦禮成長的這一年
原創
2024-04-15 11:16:26
SystemWeaver—電子電氣系統協同研發平臺
原創
2023-12-06 23:23:40
飛碼LowCode前端技術之畫布的設計 | 京東雲技術團隊
原創
2023-11-28 01:11:17
基於 Kubernetes 的 Serverless PaaS 穩定性建設萬字總結
原創
2023-10-09 00:20:30