java基礎-複用類-複用方式(2)
一.繼承中的方法過載(名稱遮蔽)
如果在基類中有某個方法被多次過載,那麼在子類中重新定義該方法名稱時並不會遮蔽在基類中的任何一個版本。在子類中,基類和子類的該方法的
任何一個版本都可以正常工作。例如:
輸出結果為:
二.如何在組合與繼承之間進行選擇
組合主要用途是想在新類中使用現有類的功能。而繼承是使用某個現有類並考慮開發他的一個特殊版本。
這意味著,對於組合來說,新類與現有類是一個“has-a”的關係,對於繼承來說,這是“is-a”的關係。
在物件導向程式設計中,生成和使用程式碼最有可能採用的方法就是直接將資料和方法包裝進一個類中,並使用該類的物件,也可以用組合技術使用現有類
來開發新類,而繼承技術其實是不太常用的。儘管強調繼承,但是並不意味著要儘可能使用它,相反,應當慎用這一技術,其使用場合僅限於你確信
使用該技術確實有效的情況。到底該使用組合還是繼承,一個最清晰的判斷方法就是問一問自己是否需要從新類向基類進行向上轉型。如果必須向上
轉型,則繼承是必要的,如果不需要,則需要好好考慮了。
相關文章
- java基礎複習Java
- React元件複用的方式React元件
- java基礎複習-----泛型Java泛型
- [Java併發]IO多路複用Java
- 多路複用
- js基礎複習JS
- 前端基礎複習前端
- Spring基礎複習Spring
- 設計一個可複用的 ArkWeb 基礎元件架構Web元件架構
- C#|.net core 基礎 - 深複製的五大類N種實現方式C#
- 如何基於 Channel 實現多路複用
- 基於CMS的元件複用實踐元件
- 一文打盡埠複用 VS Haproxy埠複用
- mysql基礎複習(SQL語句的四個分類),MySql
- 用 Feature First 的方式管理前端專案複雜度前端複雜度
- Java基礎之去除List集合中的重複元素Java
- js 基礎加固之複製JS
- 理解IO多路複用
- LinuxI/O多路複用Linux
- 架構的常規分類及複用重點架構
- Kubernetes用於多雲、混合雲要注意基礎設施的複雜性
- Java基礎類庫【Java】Java
- [零基礎學JAVA]Java SE應用部分-35.JAVA類集之四Java
- 反DDD模式之“複用”模式
- 引腳複用彙總
- IO多路複用詳解
- IO多路複用小故事
- AD PCB模組複用
- 【面試】I/O 複用面試
- REACT元件抽象與複用React元件抽象
- RecyclerView的複用機制View
- Redis 和 IO 多路複用Redis
- 關於程式碼複用
- 表示式樹,一種提高程式碼複用性的方式
- JAVA基礎--Arrays類Java
- Java IO學習筆記六:NIO到多路複用Java筆記
- Java引用複製、淺複製、深複製Java
- golang中基於kevent的IO多路複用實踐Golang