我試圖創建一個GWT應用程序下面的結構,雖然這確實是一個Java問題:爪哇 - 力實現的接口來擴展類
ChatComponent
是一個標記接口,在它沒有方法;它旨在標記可包含ChatMessage
的組件。- 所有聊天組件都是小部件,但不知道究竟是什麼類型;我想允許聊天組件擴展他們想要的任何內容。
- 但是,我還希望所有聊天組件都是Widget的一些擴展,並將其反映在代碼中。
基本上我想要的是能夠說
List<Widget> list = new ArrayList<>();
list.add(new ChatComponent());
現在,這裏的問題是顯而易見的,接口不能擴展類,我不能使用抽象類,因爲我想要的組件類能夠擴展他們想要的任何東西;所以我不能在摘要中將Widget
分類,然後再擴展它。
有沒有一個乾淨的方式來做到這一點?如果它不能在類層次結構中完成,但只能使用泛型和通配符方法完成,那也適用於我,但我無法真正想出一個可行的方法。
如果ChatComponent是一個接口,你將無法使用新的代碼ChatComponent() – aglassman