如题,望高人指点一二,谢谢

解决方案 »

  1.   

    因为public类没有实例化就调用main这个方法了,所以main是类方法,得加static
      

  2.   

    main函数是java程序执行的起点(入口)。
    JVM规定这个函数必须是public static void main(String[]). 需要理由吗? ^_^
      

  3.   

    我只是知道String[]参数是干什么的,static就是java MyClass 的时候的入口啊,具体为什么呢?
    需要inside jvm了啊
      

  4.   

    main()函数代表着某一个程序开始的切入点,所以对于整个程序而言将是唯一的,static关键字的引用便是要求对于一个class,main method必须是唯一的,他不依赖于任何class object,这就很容易理解为什么在main()函数前需要加上static关键字加以修饰了。
    @.@||~
      

  5.   

    假设类A包含main函数,并且没有static关键字修饰
    那意味着需要用A生成一个实例后才可以调用这个main
    而main是程序入口点,你没有进入main自然无法生成一个A实例
    既然没有实例,那你就永远无法调用main函数,岂不矛盾?所以main函数被设置为static,也就是说不需要类实例就可以直接被调用
      

  6.   

    楼主可以看看张孝祥的java讲座,,,对这个问题讲的非常清楚这里有下载地址:
    http://blog.yesky.com/Blog/ptop/archive/2005/03/27/96334.aspx
      

  7.   

    java程序的入口是main()函数,这个入口点是唯一的(在一个程序中)。必须加上static关键字
    因为它是在任何class object实例化之前开始的,只有加了static关键字才可以。只有静态方法
    才能在类没有实例化之前调用。
      

  8.   

    内存有静态区和动态区,动态区内存动态加载类,大小可变,静态区程序一加载就分配,大小不变,静态内存区的属性或方法不依赖类的实例,可以随时调用,因为它们自始至终都在内存当中,main方法就是这样的方法,类实例化前就需要调用他,所以必须放在静态堆中,所以必须加上static关键字。
      

  9.   

    main函数不是因为有了类才有了这样的方法!
    也就是说main函数是在类之前就有的!
    main函数是java程序的入口!
      

  10.   

    我觉得大家都只是说这个是对定 
    却没有说道理由!
    to 楼主:
    在Java中你要调用一个class某一个方法时
    你必须 你显示列化它
    或者你把它申明为 静态的(static)
    比如
    classA.method();
    同样的
    你的main方法本来也只是一个普通的方法
    它特苏在于 它可以被JVM默认调用。
    这个时候你要能被JVM调用 就必须是一个静态的方法!!!
    明白了?