public static Hello
{
public static void main (String [] orgs)
}
main函数之后括号中的(String [] orgs)
写成(Srring orgs [])
有什么不一样吗?

解决方案 »

  1.   

    在JDK1.5及以上的版本中写成这样也可以:public static void main(String... args)
      

  2.   


    总结:完全一样!约定成俗。a、规范:
    1.main()方法声明为:public static void main(String args[])。必须这么定义,这是Java的规范。
    2.为什么要这么定义,和JVM的运行有关系。当一个类中有main()方法,执行命令“java 类名”则会启动虚拟机执行该类中的main方法。由于JVM在运行这个Java应用程序的时候,首先会调用main方法,调用时不实例化这个类的对象,而是通过类名直接调用因此需要是限制为public static。对于java中的main方法,jvm有限制,不能有返回值,因此返回值类型为void。
    3.main方法中还有一个输入参数,类型为String,这个也是java的规范,main()方法中必须有一个入参,类细必须String [],至于字符串数组的名字,这个args是可以自己设定的,根据习惯,这个字符串数组的名字一般和sun java规范范例中mian参数名保持一致,取名为args。因此,main()方法定义必须是:“public static void main(String 字符串数组参数名[])”。b、main()方法不准 throws Exception,main()方法中的异常要么处理,要么不处理,不能继续抛出。c、main()方法中字符串参数数组作用是接收命令行输入参数的,命令行的参数之间用空格隔开。
      

  3.   

    回5楼: main方法同样可以抛出Exception,只不过没人这么做而已... ...回楼主:推荐写做 String[] args这样,更直观体现 类型--名称 的关系.String[] 代表字符串数组, args 这个数组的名称.
      

  4.   

    String[] args很方便的,习惯了就不想写其它的方式了
      

  5.   

    世上本没有路,走的人多了,也就成了路...两种方法都可以,不会出错,只不过大家都习惯String[] args 这种方法罢了,就跟随潮流吧.错不了
      

  6.   

    RE:b.main()方法不允许throws   Exception,main()方法中的异常要么处理,要么不处理,不能继续抛出。
      因为Java虚拟机会从出现异常的方法代码块中往回找,直到找到处理该异常的代码块为止。然后将异常交给相应的catch语句处理。
      JAVA异常层次图:API文档java.lang.Object
      java.lang.Throwable
          java.lang.Exception
           java.lang.RuntimeException
             java.lang.Error
               java.lang.ThreadDeath如果Java虚拟机追溯到方法调用栈最底部main()方法,越早处理异常消耗的资源和时间越小,产生影响的范围也越小。