这里的String[] args起什么作用,少了他们,编译没错,执行有错。错误如下:
D:\java\cons>java Test
Exception in thread "main" java.lang.NoSuchMethodError: main
求教高人

解决方案 »

  1.   

    String[] args是main方法的参数啊,没有这个参数,就找不到main方法了
      

  2.   

    main方法,java应用程序的入口!不要修改它!String[] args 运行时可以传入参数,
    java Test zhou,deng,wei 后面三个参数作为args数组传给main方法!
      

  3.   

    String[] args 这个字符串数组是保存运行main函数时输入的参数的
    java中必须要有这个,没有他你的main方法就不能正常运行了!
    你不用纠结这个问题,记住这么用就行了。
      

  4.   

    每个java 程序都是从main 方法 开始执行的, String []  args 是main 方法的参数 就好比你定义的构造函数的参数,在入口时不能丢的。
      

  5.   

    String[] args 这个只是个参数
    main函数的输出参数。
      

  6.   

    嗯,是的,String[] args是在运行时可以输入的参数,固定的写法……至于那个错误 当应用程序试图调用类(静态或实例)的指定方法,而该类已不再具有该方法的定义时,抛出该异常。 通常由编译器捕获该错误;仅当类定义发生不相容的更改时,在运行时才会发生该错误。 
      

  7.   

    main其实就是一个特殊的方法而已。方法括号当中是参数,main也不例外。
    我们编写一个程序之后要从main做入口,在cmd里面java这个类的时候,就从main开始执行,string[] args就是我们给他的参数。
    public class ddd
    {public static void main(String[] args)
    {
    System.out.println(args[0]);
    }
    }在cmd里面输入java ddd abc就知道了
      

  8.   

    java Test表示你要Test做某一件事,但是缺少main方法就找不到入口.它不知道从哪里开始
      

  9.   

    楼主你这样思考
    JAVA程序在执行的时候它从什么地方开始呢
    JAVA程序必然是从某个入口开始执行的JAVA是这样找入口的
    找到一个叫main的方法 同时这个方法必须有
    publicstaticvoid 关键字的修饰
    同时这个方法必须有String[]形式的入口参数
    当JAVA找到这个方法后,就开始执行了
    找不到这样一个方法,就没法执行了
    这是JAVA定死的
      

  10.   

    2楼说清楚了。作为入参传递给main的别忘了,main也是个函数/方法,无非特殊一点,是给OS(这里是JVM)调用罢了。它也能够定义入参的。至于为什么定义成字符串数组,那是统一规范来的。如果给你自定义main的样子,jvm的设计就复杂了。
      

  11.   

    实际上,java的main方法必须定义成
    public static void main(String[]args)
    这样的。一个字都不能改动(除了 String[]args,的args随便换,其他的都不行)。当然,main还是可以throw异常的。
      

  12.   

    如果你那个不是主类,一点问题都没有,同样编译器也是在编译期这么认为的,因为你的main()只的一个类中的静态方法,但是当你运行的时候,就告诉编译器“我这个是主类!”但编译器就迷惑了“我没找到你的主函数啊!我要告诉我找不到主函数!”
      

  13.   

    因为主函数是程序的入口,你写的东西会覆盖编译器的main(String[] args){},由于他是静态的,所以他是第一个进入内存的孩子!
      

  14.   

    参数不同了,main就不是main了~
      

  15.   

    楼主你这样思考
    JAVA程序在执行的时候它从什么地方开始呢
    JAVA程序必然是从某个入口开始执行的JAVA是这样找入口的
    找到一个叫main的方法 同时这个方法必须有
    public、static、void 关键字的修饰
    同时这个方法必须有String[]形式的入口参数
    当JAVA找到这个方法后,就开始执行了
    找不到这样一个方法,就没法执行了
    这是JAVA定死的
      

  16.   

    String[] args  这是一个字符串形式的隐式数组  类型是String  数组名是args  []这是数组形式,当你输入任何代码  执行任何操作的时候都把这些代码默认成一个无长度的数组    你可以这样写一段代码看看就明白了!
    public class TestArray{
      public static void main(String[] args){
        for(int i=0;i<args.length;i++){
          System.out.println(args[i]);
        }
      }
    }
    在你打java TestArray的时候在后面 随便输入几个数  或者其它字符  他都会以字符串形式输出!