Java publicstaticvoidmain(字符串[]args)-为什么它实际上是静态的?

Java publicstaticvoidmain(字符串[]args)-为什么它实际上是静态的?,java,static,main,Java,Static,Main,可能重复: 主要方法是静态的原因是什么?为什么不仅仅是公开的字符串[]args?我想我理解静态的含义,但我看不出有什么理由在这里。谢谢。请记住,java中的一切都是一个类,要让JVM直接访问主方法而不创建其中包含的对象,必须是静态的 static:main是类的入口点。在java中,所有东西都是在一个类中编写的。现在,当您在命令提示符下运行java文件名时,loader将加载该类,jvm将搜索主方法以进入该类。因此,将main设置为静态,将使jvm直接通过classname.main访问它 对

可能重复:


主要方法是静态的原因是什么?为什么不仅仅是公开的字符串[]args?我想我理解静态的含义,但我看不出有什么理由在这里。谢谢。

请记住,java中的一切都是一个类,要让JVM直接访问主方法而不创建其中包含的对象,必须是静态的

static:main是类的入口点。在java中,所有东西都是在一个类中编写的。现在,当您在命令提示符下运行java文件名时,loader将加载该类,jvm将搜索主方法以进入该类。因此,将main设置为静态,将使jvm直接通过classname.main访问它


对于这个问题,这也是一个很好的资源,

根据我有限的Java知识,main是静态的,因为当Java应用程序启动时,它不会创建任何类实例。需要一个不需要创建实例就可以调用的函数,这正是static关键字所做的

我们将java中的main方法声明为:public static void mainString args[]

static:main是类的入口点。在java中,一切都写在一个类中。现在,当您在命令提示符下运行java时,loader将加载该类,jvm将搜索主方法以进入该类。因此,将main设置为静态,将使jvm直接访问它,而无需创建实例


若main方法并没有被声明为静态的,那个么JVM就必须创建main类的实例,并且由于构造函数可以重载,并且可以有参数,所以JVM在Java中找main方法不会有任何确定且一致的方法。

因为main方法是静态的,所以JVM可以调用它,而无需创建包含main的类的任何实例方法若main方法并没有声明为静态的,那个么JVM就必须创建main类的实例,而且由于构造函数可以重载,并且可以有参数,所以JVM在Java中找main方法并没有任何确定的方法。答案中主要指出了这一点。这是3岁。