为什么这是Java Main Class中有效的编码方法

时间:2019-04-10 13:12:22

标签: java main

我最近看到一些下面简化的Java代码。我不明白为什么有人要在Main Class中使用新的Main()。有人可以解释为什么会使用这种情况吗?

public class Main {
    public static void main(String[] args) {
         // write your code here
         new Main();
    }

    public Main() {
         System.out.println("hello world");
    }
}

1 个答案:

答案 0 :(得分:-1)

从编译和运行的意义上讲,它是有效的,但从概念上讲,它并不是真正正确的。

您正在创建类型为Main的新对象,只是立即将其再次丢弃。它的构造函数不是用作真正的构造函数(因为它没有初始化任何内容,并且无状态对象仍然会被丢弃),而只是用作另一种方法。

既然如此,为什么不使用另一种方法?

public class Main {
    public static void main(String[] args) {
         doStuff();
    }

    public static void doStuff() {
         System.out.println("hello world");
    }
}

doStuff是否真的在这里添加了任何内容?不是特别。它为我们提供了为该方法赋予有意义的标识符的机会,以前在该方法中我们不得不使用名称main。也许那很有价值,也许没有。