我们可以创建一个Java中定义了main函数的类的对象吗?

use*_*425 3 java methods program-entry-point object

是否可以创建 main 方法所在的类的对象。我一直在寻找这个答案,但我被告知这取决于编译器,有些编译器允许,而另一些则不允许。这是真的吗?

Pro*_*ian 5

是的你可以。main 方法只是一个入口点。该类与其他类一样,只是它有一个附加public static方法。main 方法是静态的,因此不是对象实例的一部分,但除了启动程序之外,无论如何您都不应该使用 main 方法。

public class Scratchpad {

    public static void main(String[] args) {
        Scratchpad scratchpad = new Scratchpad();
        scratchpad.someMethod();
    }

    public Scratchpad() {
    }

    private void someMethod() {
        System.out.println("Non-static method prints");
    }
}
Run Code Online (Sandbox Code Playgroud)