谁调用Java中的main函数?
public static void main(String[] args) {
boolean t=true;
System.out.println("Before return");
if(t) return;
System.out.println("not execute");
}
在上面的代码中,当return
使用时,它将返回到调用主函数的函数。谁确切调用了该main
函数?
回答:
Java类在更大的上下文中执行(如其他人所指出的,是特定的JVM)。以下是一些可能性:
- 您运行
java -cp {classpath here} com.example.foo.SomeClass
到明确选择为Java应用程序类启动器运行 - 您运行
java -jar somejar.jar
(相关类将在.jar文件的清单中选择) - 您正在Eclipse中工作,并使用debug / run执行特定类的
main()
方法。
在所有情况下,该main()
方法都是给定特定类执行代码的规范入口。从java
JVM 上的文档中:
Java工具启动Java应用程序。它通过启动Java运行时环境,加载指定的类并调用该类的main方法来实现。方法声明必须如下所示:
public static void main(String args[])
该方法必须声明为public和static,它不能返回任何值,并且必须接受String数组作为参数。默认情况下,第一个非选项参数是要调用的类的名称。应该使用标准的类名。如果指定了-
jar选项,则第一个非选项参数是JAR归档文件的名称,其中包含应用程序的类和资源文件,且启动类由Main-Class清单标头指示。
Java运行时在三组位置中搜索启动类和使用的其他类:引导类路径,已安装的扩展和用户类路径。
类名或JAR文件名之后的非选项参数将传递给主函数。
javaw命令与java相同,除了javaw没有关联的控制台窗口。当您不希望显示命令提示符窗口时,请使用javaw。但是,如果由于某种原因启动失败,javaw启动器将显示一个带有错误信息的对话框。
您声明:
在上面的代码中,当使用return时,它应该返回到调用main函数的函数。
可能没有 任何
其他的Java功能(实际上,通常也没有),它调用的main()
函数。这是声明知名入口点的约定。如果启动JVM来运行您的类的main()
方法,则main()
返回时,JVM会退出,但在某些特殊情况下(例如,正在运行其他非守护程序线程或存在关闭钩子)。
以上是 谁调用Java中的main函数? 的全部内容, 来源链接: utcz.com/qa/423816.html