为什么不使用 static void main 方法,而是使用非静态方法

Hua*_*Lee 1 java static program-entry-point non-static

为什么下面的代码片段使用非静态来运行程序???以这种方式运行程序有好处吗???

public static void main(String[] args) {
    Main go = new Main();
    go.start();

}

public Main() {

}

public void start() {
    //SOME CODE HERE

}
Run Code Online (Sandbox Code Playgroud)

Gho*_*ica 5

main()基本上,简单地实例化相应类的实例,然后调用该对象上的方法有两个优点:

  • 它允许您以更加面向对象的方式“重用”该 Main 类。如果另一个类想要使用Main,则调用静态方法来实现该目的通常不是您想要的(这使得单元测试变得更加困难,例如使用静态方法)。因此,如果“重用”是您的要求之一,那么可以实例化该类,并且在不调用其静态的情况下使用它main()可能是有益的。

  • 除此之外,它还使得对主类进行单元测试变得更加容易。