我在没有main()的情况下运行Java程序时遇到错误,但是我只使用静态块来测试程序是否会在没有main()的情况下执行。是否还有其他方法可以在没有main()的情况下执行Java程序。
答案 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);
}
}