我有下面的類結構(布拉赫=== ExtBlah):多重繼承的分類?
Base
+--[ ExtBase ] --???-- [ ExtBlah ] --- .. more scripts ...
+--[ Blah ]
+---[ Script1 ]
+---[ Script2 ]
+---[ ....... ]
+---[ ScriptN ]
現在我需要寫更多的腳本,需要延長鬍說,而是布拉赫具有延長「ExtBase」,而不是「基地」爲新的劇本案件。
我仍然需要Blah,因爲Scripts1-N必須依賴於「Base」,而不是「ExtBase」。
另外我不想創建Blah的副本,即ExtBlah,因爲這意味着代碼重複,並且會更難以支持。
任何想法?
將一個Blah嵌入到ExtBlah中使其成爲一個適配器 –
是的,這裏有一個[Delegation Pattern](https://en.wikipedia.org/wiki/Delegation_pattern)。如果您使用的是NetBeans的'Alt-Ins',將會出現一個菜單,允許自動生成方法。 – markspace
另外,Java沒有「腳本」,所以請不要稱它們爲「腳本」。可能你的意思是類,但「源文件」和「編譯單元」也可能是合適的。 – markspace