没有主方法,我们可以执行Java程序吗?

是的,我们可以通过使用静态块来执行没有主要方法的Java程序。 

Java中的静态块是一组语句,当Java ClassLoader将类加载到内存中时,该语句仅执行一次,这也称为静态初始化块。静态初始化块直接进入堆栈存储器。

示例

class StaticInitializationBlock{
   static{
      System.out.println("class without a main method");
      System.exit(0);
   }
}

在上面的示例中,我们可以在没有main方法的情况下执行Java程序(直到Java 1.6版本才可用)。Java 7和更高版本不允许这样做,因为JVM在初始化类之前检查main方法的存在。

输出结果

class without a main method.