1. 程式人生 > >Java面向物件的五個基本原則

Java面向物件的五個基本原則

參考部落格:Ask馬小向的專欄,網址:http://blog.csdn.net/happymatilian/article/details/48440073

1  單一職責原則Single-Responsibility Principle):就一個類而言,應該僅有一個引起它變化的原因。

  例如:寫一個WinForm應用程式,需要將資料庫的操作、檔案的操作、演算法的運用等,不需要將這些都寫在Form這樣的類中。應該將它們各自分開,應對將來的變化。或許你在寫另外一個From類的時候,也需要用到檔案操作,那樣你就可以複用檔案操作的類了,不用貼上複製程式碼了。

2 開發封閉原則Open-Closed Principle

):是軟體實體(類、模組、函式等),應該可以擴充套件的,但是不可修改。

3 依賴倒置原則(Dependency-Inversion Principle):抽象不應該依賴細節,細節應該依賴於抽象

例如:客戶端對資料庫的插入操作。最初只是將資料儲存到MySql資料庫,現在需要儲存資料到Oracle資料庫。我們應該對插入操作進行抽象,MySql和Oracle實現插入操作的具體內容,使客戶端依賴與插入操作,而不應該依賴與MySql資料庫的操作或Oracle資料庫操作。

4 里氏替換原則(Liskov-Substituent  Principe.):子類必須能夠替換掉他們的父類。意思是,子類必須具有父類的所有特性。

5 介面隔離原則Interface-Segregation Principle):多個專用的介面優於一個單一的通用介面。不要把所有的方法都新增到一個介面中。

例如:還是列舉狼類和羊類,它們都具有奔跑的方法,但狼具有食肉這一方法,而羊類不具有食肉這一方法。這時可以定義兩個介面,讓狼類繼承奔跑介面和食肉介面即可,而羊類繼承奔跑介面即可。