繼承(Inheritance)垢病

Inheritance

歷史上的問題
考慮這樣一個事實,Java 語言的創建已經是近 20 年前的事情,當時是 「面向對象」 的全盛時期。它設計用於模仿當時的主流語言 C++,嘗試將使用這種語言的開發人員吸引到 Java 平台上來。毫無疑問,在當時看來,這樣的決策是明智而且必要的,但回顧一下,就會發現其中有些地方並不像創建者設想的那樣有益。

在二十年前,對於 Java 語言的創建者來說,反映 C++ 風格的私有繼承和多重繼承是必要的。 自那之後,許多 Java 開發人開始為這些決策而後悔。

徹底放棄私有繼承和多重繼承會使我們在代碼重用方面付出昂貴的代價。Java 開發人員可能會因從虛擬多重繼承中解放出來而高興,但代價是程序員往往要完成辛苦而易於出錯的工作。



Comments