为什么Java程序需要“main()”方法?

这只是一个命名惯例? 为什么在从shell执行程序时不能调用任何方法,例如

 $> java myPackage.MyClass.myOwnEntryPoint(String [] str)

是的,这是一个从Cinheritance的命名约定。优点是这样,通过查看代码找出哪个方法应该是主要方法非常简单。

main方法是运行Java应用程序(而不是applet或其他东西)的java程序寻找的入口点。 据我所知,没有办法告诉java寻找不同的方法,所以它不仅仅是命名约定; 如果你想运行你的应用程序(通过标准的java工具,无论如何),你想给它一个带有适当签名的main方法。 (你可以用静态初始化器玩游戏,但这完全是另一回事。)

名称maininheritance自C,但它不仅仅是一个约定。