A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑文博 中级黑马   /  2012-5-30 09:58  /  2536 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑文博 于 2012-5-30 19:41 编辑

在学毕老师视频的主函数,有个几个问题想问一下。
1.请问一个程序是否可以写多个主函数?
2.一般写程序为什么只写一个主函数呢?
3.视频实例
class MainDemo
{
      public static void main(String[] args)
      {
              string[] arr={"haha","hehe","xixi"};
              MainTest.main(arr);
       }
}
class MainTest
{
       public static void main(String[] args)
      {
               for(int x=0; x<args.length; x++)
               System.out.println(args[x]);
       }
}
完。
这个明显写了两个主函数,想知道这两个函数的联系是调用还是重载?主函数是否可以重载?

----------------------------------------编辑后分隔--------------------------------------------------
真心感谢几位给的回复,问题已经解决,再次感谢!

5 个回复

倒序浏览
本帖最后由 丁桂松 于 2012-5-30 10:52 编辑

一个程序可以有多个main()存在,但是jvm只会识别一个主函数做为程序的入口,在一些项目的编写过程中,程序员需要测试类而在类中创建了主函数,但是在运行过程中jvm只会识别一个能引导整个程序的main()方法入口,一个class 中只可以有一个主函数,也可以没有.主函数可以重载 但是没意义,不需要去研究.编写代码用不到的
回复 使用道具 举报
一个程序中可以有多个main函数,但是虚拟机只会识别一个特定的main函数作为程序入口,
你说一个程序一般只写一个主函数,其实是一个类只写一个主函数,因为在以后开发中,一个类文件中只有一个类为public
可以对外界开放,所以其他类没必要写main函数
希望对你有帮助
回复 使用道具 举报
一个程序当然可以有多个main方法,虚拟机会会根基程序实际情况找到一个main方法来作为程序入口,就如楼主所写的类MainDemo是程序入口,是程序的主方法。一个类文件内可以定义多个类,但是呢只能定义一个public类,如果是在类文件中写main方法在public类中写main方法供jvm调用就行了。
回复 使用道具 举报
1,一个类中可以有多个主函数,可以重载,但是JVM只以public static void main(String[] args)这样的主函数为入口
2,主函数就是一个程序的入口,所以,一般的一个足矣;
3,楼主你这是两个类里各自有一个主函数;
在你上面的类的主函数里调用了下面那个类的主函数,这里是调用;
调用的方法跟调用其它类中的静态方法是一样的.

回复 使用道具 举报
做web研发的话。基本上看不见main方法。因为用不到。

java开发桌面软件,肯定会用到main方法。

因为web研发不从main方法进入,桌面程序则会用到main方法;
完毕。说了等于没说。恨我吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马