了解, 谢谢回复, 不过很好奇的是
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
System.out.println("test");
new NewJFrame().setVisible(true);
}
});
这边做了new Runnable() {public void run(){} }
是代表将Runnable实体化吗? 看不太懂这句,
我感觉只是把Runnable接口实体化当作invokeLater的参数,
只是接口本身不是不可以实体化吗? Runnable为什么可以new呢?
※ 引述《noapaov (单身汉)》之铭言:
: 请教一下各位, 目前在Swing碰到一个疑问,
: 看了大多数的书籍, 在使用Swing建议使用方法如下
: public static void main(String args[]) {
: java.awt.EventQueue.invokeLater(new Runnable() {
: public void run() {
: System.out.println("test");
: new NewJFrame().setVisible(true);
: }
: });
: }
: 也就是视窗程式会开一个thread来处理Event Queue和GUI的事情,
: 但我是用下列方法一样会产生该视窗物件, 也没发生什么错误
: public static void main(String args[]) {
: new NewJFrame().setVisible(true);
: }
: 想请问各位大大, 这两著到底差别在哪? 谢谢