我有一個擴展Thread的類,並且需要在同一個類上擴展JFrame。因爲在Java中多重繼承是不可能的,它如何在已經擴展了Thread的類的內部使用JFrame對象?如何在已擴展的類中擴展JFrame線程
回答
不是擴展或者JFrame的或線程,使用組合物,它是少了很多限制:
public class MyApplication {
JFrame applicationFrame;
Thread someThread;
MyApplication() {
SwingUtilities.invokeLater(new Runnable() {
@Override void run() {
applicationFrame = new JFrame();
// some more GUI initialization.
applicationFrame.setVisible(true);
}
});
someThread = new Thread(new Runnable() {
@Override void run() {
// do my work.
}
});
someThread.start();
}
public static void main(String... args) {
new MyApplication();
}
}
有票! 1 +的投票,但希望它可以是100+ –
而不是擴展線程,你可以讓類實現Runnable?這樣,您可以擴展JFrame,將其傳遞給線程。
public class MyFrameThread extends JFrame implements Runnable {
@Override
public void run() {
...
}
}
public static void main(String... args) {
Thread myThread = new Thread(new MyFrameThread());
myThread.start();
myThread.join();
}
擴展JFrame是不好的主意一般 –
我正在一個套接字程序在Java中。我唯一的經驗是在Android中,所以java swing與我習慣的有所不同。所以不是擴展JFrame,而是使控制檯應用程序沒有任何GUI。我正在做這個測試我稍後會在Android中使用的套接字的一些代碼。 – Kevik
您可以輕鬆地使用JFrames和線程不擴展它們,並且已建議大多數,你通常更好關閉不擴展它們。擴展它們會將您的類綁定到JFrame,以防您在JPanel,JDialog等中使用它。爲什麼要限制自己,如果不是必要的話?
- 1. Form.java擴展JFrame
- 2. 當超類擴展JFrame
- 3. 如何擴展擴展類的接口
- 4. 我如何在html中擴展視頻以擴展Chrome擴展
- 5. jQuery:如何擴展擴展?
- 6. 擴展擴展類型
- 7. 擴展擴展類Zend_Db_Table_Row_Abstract
- 8. 擴展jframe的大小?
- 9. 反應式擴展/並行擴展中的最大線程數
- 10. SliderCbx擴展JFrame錯誤
- 11. 如何在Android上擴展ORMLite的BaseDaoImpl類以擴展功能
- 12. 如何在主類中擴展JFrame和JPanel?
- 13. 擴展一個擴展類的模塊
- 14. 擴展類成員的擴展方法?
- 15. 使用擴展方法的擴展類
- 16. 如何擴展類型類
- 17. 在已經擴展ActionBarActivity的主活動中擴展一個額外的類?
- 18. 在MatLab中擴展polyfit線
- 19. 在matplotlib中擴展線段
- 20. Java中的每個類擴展Object.Then如何擴展其他類。因爲一個類只能擴展一個類
- 21. 如何在Python中擴展線段?
- 22. 如何在Java中擴展2個類?我需要擴展JFrame加上另一個類
- 23. 如何在類中創建線程擴展片段
- 24. 擴展類時出現錯誤擴展
- 25. 擴展方法擴展靜態類
- 26. F#模塊擴展與類型擴展
- 27. 類擴展在PHP
- 28. Segfault在C多線程python擴展中
- 29. 如何擴展類實例?
- 30. 如何擴展SQLiteDatabase類?
Swing GUI對象應該在[事件派發線程](http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html)上的_only_上構建和操作。爲什麼要擴展'JFrame'? – trashgod
爲什麼您需要首先擴展JFrame?通常沒有必要。 –
看到這個問題關於擴展JFrame:http://stackoverflow.com/questions/1143923/why-shouldnt-you-extend-jframe-and-other-components –