1

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

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 窗口来测试多个应用程序,这样做可以吗?

4

2 回答 2

6

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

如果您想要主类的多态实例化,只需为此添加一个独立的方法族。不要将它与一种预定义的特殊方法混为一谈。

于 2013-05-14T14:52:28.463 回答
1

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

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

于 2013-05-14T14:52:26.247 回答