Java六大原則


單一原則:簡單地說就是一個類只做一件事。如果你遵守了這個原則,那么你的類就會划分的很細,每個類都有比較單一的職責,這不就是高內聚、低耦合么!單一職責原則並不是一個類只能有一個函數,而是說這個類中的函數所做的工作是高度相關的,也就是高內聚。

依賴反轉原則:設計和實現要依賴於抽象而非具體。

里氏替換原則:繼承會給程序帶來侵入性,程序的可移植性降低,增加了對象間的耦合性,如果一個類被其他的類所繼承,則當這個類需要修改時,必須考慮到所有的子類,並且父類修改后,所有涉及到子類的功能都有可能會產生故障。里氏替換原則通俗的來講就是:子類可以擴展父類的功能,但不能改變父類原有的功能。它包含以下4層含義:1、子類可以實現父類的抽象方法,但不能覆蓋父類的非抽象方法。2、子類中可以增加自己特有的方法。3、當子類的方法重載父類的方法時,方法的前置條件(即方法的形參)要比父類方法的輸入參數更寬松。4、當子類的方法實現父類的抽象方法時,方法的后置條件(即方法的返回值)要比父類更嚴格。

接口隔離原則:接口隔離原則(ISP)拆分非常龐大臃腫的接口成為更小的和更具體的接口,這樣客戶將會只需要知道他們感興趣的方法。很多人會覺的接口隔離原則跟之前的單一職責原則很相似,其實不然。其一,單一職責原則原注重的是職責;而接口隔離原則注重對接口依賴的隔離。其二,單一職責原則主要是約束類,其次才是接口和方法,它針對的是程序中的實現和細節;而接口隔離原則主要約束接口接口,主要針對抽象,針對程序整體框架的構。 采用接口隔離原則對接口進行約束時,要注意以下幾點:1、接口盡量小,但是要有限度。對接口進行細化可以提高程序設計靈活性是不掙的事實,但是如果過小,則會造成接口數量過多,使設計復雜化。所以一定要適度。2、為依賴接口的類定制服務,只暴露給調用的類它需要的方法,它不需要的方法則隱藏起來。只有專注地為一個模塊提供定制服務,才能建立最小的依賴關系。3、提高內聚,減少對外交互。使接口用最少的方法去完成最多的事情。4、運用接口隔離原則,一定要適度,接口設計的過大或過小都不好。設計接口的時候,只有多花些時間去思考和籌划,才能准確地實踐這一原則。

迪米特原則:一個類應該對自己需要耦合或者調用的類知道得最少,這有點類似於接口隔離原則中的最小接口的概念。被依賴者的內部如何實現、如何復雜都與調用者或者依賴者沒有關系,調用者或者依賴者只需要知道它需要它需要的方法即可,其他的一概不關心。

開閉原則:即在需要對軟件進行升級、變化時應該通過擴展的形式來實現,而非修改原有代碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM