在没有main()

时间:2015-07-19 10:50:36

标签: java

我在没有main()的情况下运行Java程序时遇到错误,但是我只使用静态块来测试程序是否会在没有main()的情况下执行。是否还有其他方法可以在没有main()的情况下执行Java程序。

3 个答案:

答案 0 :(得分:3)

在静态块结束之前放置System.exit(0)。你需要这个才能在它开始搜索main方法之前终止程序。

此问题已经回答 - link

答案 1 :(得分:0)

是的,您可以使用static初始化程序块,如下所示: -

public class Hello {
  static {
    System.out.println("Hello, World!");
  }
}

输出: -

Hello, World!

  

线程“main”中的异常java.lang.NoSuchMethodError:main

您可以在打印消息后立即致电NoSuchmethodError,以避免System.exit(0): -

static {
    System.out.println("Hello, World!");
    System.exit(0);
  }

答案 2 :(得分:0)

请提及您正在使用的JDK。 如果您使用的是JDK 7,那么它将不允许您在没有main();

的情况下运行

如果您使用的是JDK 6及以下版本,则可以执行相同操作而不会出现如下错误:

public class Hello {
  static {
    System.out.println("Hello, World!");
    System.exit(0);

  }
}