[英]how to call constructor from main method
import javax.swing.JFrame;
public class MainClass {
public static void main(String[] args) {
System.out.println("Starting");
}
MainClass() {
JFrame w = new JFrame();
w.setVisible(true);
w.setSize(640, 480);
}
}
如何从Main方法调用构造函数以输出JFrame窗口。 还是我应该使用一个完全不同的类来做到这一点?
简单地...
public static void main(String[] args) {
MainClass mainClass = new MainClass();
}
这个...
使用Swing组件有一个非常重要的规则: 必须在事件分发线程 (EDT)中进行所有更改 。 这包括创建UI组件。
因此,您应该执行以下操作:
final class Main {
public static void main(String... argv) {
SwingUtilities.invokeLater(Main::setup);
}
private static void setup() {
Main m = new Main();
/* Do whatever... */
}
}
这利用了invokeLater()
方法,该方法采用Runnable
。 如果需要将参数传递到安装程序中,则可以使用lambda,或使用可配置的对象(而不是方法引用)实现Runnable
接口。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.