最好從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,最終還有其他圖形組件)。 還是我錯了?問題的原因是這樣的。 –