荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: vbiao (阿标), 信区: Java
标  题: Re: 没有static就找不到main(),why?
发信站: 荔园晨风BBS站 (Wed Jun  1 18:43:32 2005) , 站内信件

注意: 静态方法是编译时执行的,类实例是运行时执行的

main方法必为静态,不然编译器根本不知道入口在哪里(不声明为静态它就是实例方法,是
动态的,只有在声明它的类被实例化后方可使用),静态方法只能访问静态的变量或方法,
要想访问非静态的变量或方法,就得生成声明该类的实例,通过实例来访问。
比如:
class test{
       static int i=10;
       int j;

       public static main(String[] args){
            i++;//这样访问是正确的
            // j=10;这是错误的
            method();//这样访问正确

            //要调用anotherMethod方法就得生成test的实例
            test t=new test();
            t.anotherMethod
            t.j=10;//非静态实例变量的访问

       }

      public static void method(){
          //略
      }

      public void anotherMethod(){
          //略
      }
}

【 在 NOM 的大作中提到: 】
: 今天练习了一个程序
: ,public void main(){
: ………………
:   }
: 这样编译时就找不到主类main
: public static void main(){
: ……}
: 然后还得把所有自定义的方法声明为static,变量数组也要static,才可以正确执行
: 不知道什么原因,

※ 修改:.vbiao 於 Jun  1 18:45:52 2005 修改本文.[FROM: 192.168.1.218]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店