主线程会在Java中调用静态块吗?

时间:2018-07-18 16:05:36

标签: java multithreading static block main

主线程会调用静态块吗?还是主线程如何在jdk7之前执行,而程序也曾经在没有main方法的情况下执行?

在Java主线程中调用main方法并开始执行,我的问题是,如果我们不编写main方法,而只是在类中编写静态块(因为我们可以在jdk6中做到这一点),在这种情况下将调用主线程静态块?

1 个答案:

答案 0 :(得分:1)

  

主线程会在Java中调用静态块吗?

您无法在Java中调用static块。

您可以做的是触发要初始化的类,该类继而为您调用静态块。

  

或者在jdk7之前如何执行主线程

此行为自Java 1.0起就没有改变

  

过去没有主方法也可以执行程序的地方吗?

当您尝试启动程序时,即使没有main方法,它也会首先加载类,并调用static块。尽管这很有趣,但我强烈建议您实际上不要这样做。