Extends是有害的;也許對于Charles Manson這個級別的不是,但是足夠糟糕的它應該在任何可能的時候被避開!癑AVA設計模式”一書花了很大的部分討論用interface繼承代替實現繼承。
好的設計者在他的代碼中,大部分用interface,而不是具體的基類。本文討論為什么設計者會這樣選擇,并且也介紹一些基于interface的編程基礎。
接口(Interface)和類(Class)?
Jams Gosling(Java之父)做發起人講話。有人問他:“如果你重新構造Java,你想改變什么?”!拔蚁霋仐塩lasses”他回答。在笑聲平息后,它解釋說,真正的問題不是由于class本身,而是實現繼承(extends 關系)。接口繼承(implements關系)是更好的。你應該盡可能的避免實現繼承。
失去了靈活性
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/