Java 应用程序的入口点:main()、init() 或 run()?
到目前为止,我一直在使用方法在Java中执行我的代码。何时/何可能想要使用或代替?public void run() {}
main()
init()
run()
到目前为止,我一直在使用方法在Java中执行我的代码。何时/何可能想要使用或代替?public void run() {}
main()
init()
run()
这是一个奇怪的问题,因为它不应该是一个选择的问题。
启动 JVM 时,指定要运行的类,程序启动的正是该类。main()
通过,我假设你指的是JApplet方法。在浏览器中启动小程序时,指定小程序的方法将作为第一个业务顺序执行。init()
init()
通过 ,我假设你指的是 Runnable 的方法。这是启动新线程时调用的方法。run()
如果 Eclipse 正在运行你的方法,即使你没有 ,那么它正在做一些奇怪的、非标准的事情,但并非不可行。也许你应该发布一个你一直以这种方式运行的示例类。run()
main()
该方法是 Java 应用程序的入口点。main
具体来说,当Java虚拟机被告知通过指定其类(通过使用应用程序启动器)来运行应用程序时,它将查找签名为.java
main
public static void main(String[])
从 Sun 的 java
命令页:
Java 工具启动一个 Java 应用程序。它通过启动 Java 运行时环境、加载指定的类并调用该类的 main 方法来实现此目的。
该方法必须声明为 public 和 static,它不能返回任何值,并且它必须接受数组作为参数。方法声明必须如下所示:
String
public static void main(String args[])
有关如何执行 Java 应用程序的其他资源,请参阅以下来源:
该方法是新 Thread
或实现 Runnable 接口的
类的入口点。当 Java Virutal Machine 通过命令启动它时,它不会被 Java Virutal Machine 调用。run
java
由于 或 本身不能由 Java 虚拟机直接运行,因此必须由该方法调用。这可以通过实例化 a 并在应用程序的方法中调用其方法来实现:Thread
Runnable
Thread.start()
Thread
start
main
public class MyRunnable implements Runnable
{
public void run()
{
System.out.println("Hello World!");
}
public static void main(String[] args)
{
new Thread(new MyRunnable()).start();
}
}
有关如何启动 的子类或实现类的更多信息和示例,请参阅 Java 教程中的定义和启动线程。Thread
Runnable
该方法是在小程序或 JApplet 中调用的第一个方法。init
当浏览器的 Java 插件或小程序查看器加载小程序时,它将首先调用该方法。使用小程序所需的任何初始化都应在此处执行。方法完成后,将调用该方法。Applet.init
init
start
有关何时调用小程序方法的更多信息,请阅读 Java 教程中的小程序生命周期中有关小程序生命周期的信息。init
另请参见:如何制作 Java 教程中的小程序。