问题描述
- [java]关于main函数的执行先后顺序
- 在这个文件在执行的时候先执行那个呢?,如果把InvolveMain类里的方法写成注释后面的又先执行哪个呢?
求详细解释一下,谢谢谢谢。package exercise5;//整个文件的类名是E20//创建一个使用可变参数列表而不是普通的main()语法的main()。//打印所产生的args数组的所有元素,并用各种不同数量的命令行参数来测试它class InvolveMain{ static void main(String...args){ //如果写成public static void? for(String a:args) System.out.print(a+"" ""); System.out.println(); }}public class E20 { public static void main(String[] args){ InvolveMain.main(""lal""lalaa""dfsdf""); }}
解决方案
首先,测试这段代码,定义的类文件名称必须是E20.java,因为E20是public类,必须有独立的类文件。
其次,一个类文件中定义两个类,且有各自的main方法,注意main方法的声明必须是
public static void main(String[] args){ }
那么,你运行的时候,需要选中运行哪个类的main方法的,在Eclipse下右键run as application,弹出选择框,让你指定运行哪个类的main函数的。
结论就是,Java语言本身是严谨的,一个类一次执行只能有一个入口main函数的。
解决方案二:
java程序执行过程是这样的,先找到public类,然后从public类中找到main方法开始执行,虽然你在另一个类中也定义了main方法,但这个方法不会被jvm自动调用的。
时间: 2024-08-03 08:39:56