最好从main的同一个类中的一个方法启动用户界面,或从main调用的另一个类中启动用户界面?这里的一个示例:启动GUI:Facade vs main
从主
Main.java
package main_version;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class Main {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
launchGUI();
}
});
}
private static void launchGUI() {
JFrame frame = new JFrame("Main version");
//other code
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(333, 333);
frame.setVisible(true);
}
}
从另一个类
Main.java
package facade_version;
import javax.swing.SwingUtilities;
public class Main {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
UserInterface.lauch();
}
});
}
}
package facade_version;
import javax.swing.JFrame;
public class UserInterface {
public static void lauch() {
JFrame frame = new JFrame("Facade version");
//other code
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(333, 333);
frame.setVisible(true);
}
}
你认为它有什么区别? – Dici
@Dici:关于功能当然不是。但是对于外观来说,主类仅依赖于UserInterface类(而不是JFrame,最终还有其他图形组件)。 还是我错了?问题的原因是这样的。 –