北京北大青鳥:Java編程的十個原則(2)

北京北大青鳥老師介紹,沒有接觸過Java的人如何學(xué)好Java課程?在上一篇文章中,北京北大青鳥校區(qū)老師已經(jīng)介紹了五個原則,下面我們將繼續(xù)介紹剩下的五個原則。

相關(guān)閱讀:Java編程的十個原則(1)

原則6:優(yōu)先利用組合而非繼承

如果可能的話,優(yōu)先利用組合而不是繼承。一些人可能會質(zhì)疑,但我發(fā)現(xiàn),組合比繼承靈活得多。組合允許在運行期間通過設(shè)置類的屬性來改變類的行為,也可以通過使用接口來組合一個類,它提供了更高的靈活性,并可以隨時實現(xiàn)。

原則7:里氏代換原則(LSP)

根據(jù)該原則,子類必須能夠替換掉它們的基類,也就是說使用基類的方法或函數(shù)能夠順利地引用子類對象。LSP原則與單一職責(zé)原則和接口分離原則密切相關(guān),如果一個類比子類具備更多功能,很有可能某些功能會失效,這就違反了LSP原則。為了遵循該設(shè)計原則,派生類或子類必須增強功能。(北京北大青鳥校區(qū))

原則8:接口分離原則

采用多個與特定客戶類有關(guān)的接口比采用一個通用的涵蓋多個業(yè)務(wù)方法的接口要好。設(shè)計接口很棘手,因為一旦釋放接口,你就無法在不中斷執(zhí)行的情況下改變它。在Java中,該原則的另一個優(yōu)勢在于,在任何類使用接口之前,接口不利于實現(xiàn)所有的方法,所以單一的功能意味著更少的實現(xiàn)方法。

原則9:委托原則

該原則最典型的例子是Java中的equals() 和 hashCode() 方法。為了平等地比較兩個對象,我們用類本身而不是客戶端類來做比較。這個設(shè)計原則的好處是沒有重復(fù)的代碼,而且很容易對其進行修改。

原則10:針對接口編程,而不是針對實現(xiàn)編程

該原則可以使代碼更加靈活,以便可以在任何接口實現(xiàn)中使用。因此,在Java中最好使用變量接口類型、方法返回類型、方法參數(shù)類型等。(北京北大青鳥校區(qū)提供)

 

北大青鳥網(wǎng)上報名
北大青鳥招生簡章