我有一个扩展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. 线程扩展Thread
- 5. 我如何在html中扩展视频以扩展Chrome扩展
- 6. 扩展扩展类型
- 7. 扩展扩展类Zend_Db_Table_Row_Abstract
- 8. jQuery:如何扩展扩展?
- 9. 如何在左侧扩展jframe?
- 10. 扩展jframe的大小?
- 11. 反应式扩展/并行扩展中的最大线程数
- 12. SliderCbx扩展JFrame错误
- 13. 扩展一个已经在Django中扩展的模板
- 14. 如何在Android上扩展ORMLite的BaseDaoImpl类以扩展功能
- 15. 如何在主类中扩展JFrame和JPanel?
- 16. 扩展类成员的扩展方法?
- 17. 扩展一个扩展类的模块
- 18. 使用扩展方法的扩展类
- 19. 如何扩展类型类
- 20. 在已经扩展ActionBarActivity的主活动中扩展一个额外的类?
- 21. 在matplotlib中扩展线段
- 22. 在MatLab中扩展polyfit线
- 23. Java中的每个类扩展Object.Then如何扩展其他类。因为一个类只能扩展一个类
- 24. 如何在Python中扩展线段?
- 25. 如何在Java中扩展2个类?我需要扩展JFrame加上另一个类
- 26. 如何在类中创建线程扩展片段
- 27. php线程执行扩展
- 28. 如何在扩展JButton类时扩展actionPerformed方法
- 29. TYPO3扩展生成器如何从另一个扩展扩展类
- 30. 爪哇 - 扩展扩展一个Thread类
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 –