启动GUI:facade vs main

时间:2015-09-05 10:28:28

标签: java user-interface facade

最好从main的同一个类中的方法启动用户界面,还是从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();
            }
        });

    }

}

UserInterface.java

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);
    }
}

1 个答案:

答案 0 :(得分:-1)

为了可重用,我建议将每个GUI组件放在不同的类中。

然而,对于小项目来说没有什么大不同,如果只想测试一些东西,他可以跳过创建多个类。它对编译器没有任何影响。