黑马程序员技术交流社区

标题: 一个java文件为什么可以有两个main函数 [打印本页]

作者: 焦亚星    时间: 2013-2-1 12:09
标题: 一个java文件为什么可以有两个main函数
本帖最后由 焦亚星 于 2013-2-1 14:08 编辑

代码如下:
class MainDemo
{
        public static void main(String[] args)
        {
                String[] arr = {"aa","bb","cc","dd","ee"};

                MainTest.main(arr);
        }
}


class MainTest
{
        public static void main(String[] args)
        {
                for(int x=0; x<args.length; x++)
                        System.out.println(args[x]);
        }
}

两个主函数虚拟机如何执行?
作者: 刘凯    时间: 2013-2-1 12:15
应该可以吧,main函数只是虚拟机的入口, 两个分别是在不同的类中的,如果在一个类中应该不允许俩个或者两个以上主函数的   而执行时 只是在执行时,是按照你所指定的类中的主函数开始执行的, 所以一个java文件中可以有两个以上主函数 只要他们不再一个类中就应该可以 。
作者: 黄锦成    时间: 2013-2-1 12:21
这个是没问题的,执行的时候指定哪个类就行了。
编译 javac XXX.java
执行:java  MainDemo 或 java MainTest
作者: 张庚    时间: 2013-2-1 12:22
把第二个main当成静态方法执行
作者: HM王琦    时间: 2013-2-1 12:24
可以执行,这一个.java的文件中,有两个类而且两个类没有关系,在编译的时候,编译的这两个类,但是在运行的时候,是分别运行的这两个类文件。也就是说,在一个类中,还是只有一个主函数。
作者: 张世钦    时间: 2013-2-1 12:44
两个mian()方法存在于不同的类当中,不冲突,有main()方法只是代表该类可以独立运行.

但是一个类中不能有两个main()方法同时存在,这样的话会报错!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2