Java組合與繼承之間的選擇
組合和繼承都允許在新的類中放置子對象,組合是顯示的這樣做,而繼承則是隱式的做。
組合技術(shù)通常用于想在新類中使用現(xiàn)有類的功能而非他的接口。在新類中嵌入某個(gè)對象,讓其實(shí)現(xiàn)所需要的功能,但新類的用戶看到的只是新類所定義的接口,而非所嵌入對象的接口。為了取得這樣效果,需要在新類中嵌入一個(gè)現(xiàn)有類的parivate對象。
有時(shí),允許類的用戶直接訪問新類中的組合成分是極具意義的;也就是說,將成員對象聲明為public。如果成員對象自身都隱藏了具體實(shí)現(xiàn),那么這種做法是安全的。當(dāng)用戶能夠了解到你正在組裝一組部件,會使得端口更加易于理解。Car對象就是一個(gè)很好的例子:
posted on 2014-06-05 13:36 順其自然EVO 閱讀(272) 評論(0) 編輯 收藏 所屬分類: 測試學(xué)習(xí)專欄