重载主方法是不好的做法吗?

时间:2013-05-14 14:47:37

标签: java

我知道它的局限性,但如果我只打算上课,比方说,例如

public class GUIWindow
{
    static JFrame theGUI = new JFrame();

    public static void main(String[] args)
    {
        theGUI.setSize(900, 600);
        theGUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        theGUI.setLocationRelativeTo(null);
    }

    public static void main(Object obj)
    {
        String[] array = new String[1];

        main(array);

        theGUI.setTitle(obj.getClass().getName());
    }

    public static void main()
    {
        String[] array = new String[1];

        main(array);

        theGUI.setTitle(null);
    }
}

我可以调用创建一个特定大小的默认GUI窗口来测试多个应用程序这是一件好事吗?

2 个答案:

答案 0 :(得分:6)

public static void main(Sting[] args)是JVM识别的唯一入口点。 您可以添加main的其他重载(而不是覆盖),但这些将缺少特殊含义。它感觉不一致,因此具有误导性。

如果您想要对主类进行多态实例化,只需为此添加一个独立的方法系列。不要将其与一种预定义的特殊方法混合使用。

答案 1 :(得分:1)

主方法public static void main(String args[])应该用于设置程序并验证程序的传入参数是否有效。其他任何东西通常被认为是不好的做法。这包括“重载”您的主要方法。

话虽如此,如果您只是在做玩具示例或测试,请在主要方法中做任何您想做的事。