請看下圖並注意JRadioButtonMenuItem
不延伸JRadioButton
,即使不是JToggleButton
。我的猜測是他們重複了代碼。 :P
或者他們在這些切換組件中有一箇中間類?JRadioButtonMenuItem不是JRadioButton擴展
0
A
回答
2
的事情是,Java不支持多重繼承,否則你可能會認爲有JRadioButtonMenuItem
擴大雙方JMenuItem
和JRadioButton
(雖然目前尚不清楚,如果它本來是一個不錯的實現選擇)。
所以這意味着你必須選擇一個或另一個,在這種情況下,選擇已經延長JMenuItem
。
現在,如果你看看,你看到JMenuItem
和JRadioButton
有一個共同的祖先是AbstractButton
實際上封裝,其中涉及到一個按鈕的當前狀態都存儲在ButtonModel
(武裝,選擇等。 )。
在JRadioButtonMenuItem
的情況下,它採用了ToggleButtonModel
,因此在這裏你有怎樣的相同的模型由JRadioButton
和JRadioButtonMenutItem
共享。
關於該視圖,這是全部委託到BasicRadioButtonMenuItemUI
,尤其是更多到BasicMenuItemUI
(這是BasicRadioButtonMenuItemUI
的母公司)。最終它依賴於當前的外觀來提供不同的圖標,樣式,邊框,字體等...
這就是整個事情的方式。
+0
引用UI委託。這對代表來說是更多的工作,但也更靈活。 – trashgod
相關問題
- 1. div不擴展表擴展,或div不擴展當它擴大
- 2. DOMContentReady不是在Chrome擴展
- 3. PHP擴展不是在LINUX
- 4. 擴展是CI_Controller
- 5. 「擴展」是否也擴展變量?
- 6. JradioButton將不工作
- 7. ActionScript:Tweener可以向上擴展而不是向下擴展?
- 8. VB擴展屬性,而不是擴展方法
- 9. 擴展方法和擴展屬性是不好的做法嗎?
- 10. htaccess的404重定向.html擴展名而不是.php擴展
- 11. 擴展SQLiteOpenHelper是不是浪費時間?
- 12. Lister for JRadioButtonMenuItem處理事件
- 13. 將JComboBox嵌入到JRadioButtonMenuItem中
- 14. Angular2 - PrimeNG dataTable行擴展不擴展
- 15. CollapsiblePanelExtender不擴展
- 16. .rowconfigure不擴展?
- 17. 不擴展React.Component
- 18. 不擴展NSScroller
- 19. CSS不擴展
- 20. JRadioButton java
- 21. 擴展類不是父類型嗎?
- 22. 爲什麼Stream.CopyTo不是擴展方法?
- 23. hijax不是PHP擴展工作
- 24. 擴展,而不是覆蓋,原型
- 25. 使用類擴展而不是util.inherits
- 26. results.shift不是一個函數:Firefox擴展
- 27. SNMP擴展爲INTEGER而不是STRING
- 28. QScrollArea正在擴展而不是滾動
- 29. Yasnippet:如何擴展「或」但不是「 - 或」
- 30. 擴展片段而不是ListFragment
你可能想下載源代碼並查找每個區別 – schippi
請引用圖片來源。 – trashgod
你真正的問題是什麼?你想知道你是否正確地使用共享代碼的兩個類?你想知道兩個類別之間的相似之處和差異嗎? – Pops