龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

static方法是什么时候执行

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
先说一下static方法的特点吧。 方法被定义为static就表示这个方法不需要声明类的实例即可执行;比如main方法。而某个类成员被定义为static的时候,它就几乎完全独立于这个类了。 根据

  先说一下static方法的特点吧。
  方法被定义为static就表示这个方法不需要声明类的实例即可执行;比如main方法。而某个类成员被定义为static的时候,它就几乎完全独立于这个类了。
  根据think in Java2 还有java参考大全中所述,static方法在类刚刚被加载的时候就执行了。
  因此,可以说,static方法是在对程序进行解释的时候执行。
  比如(引自java参考大全)
  class UseStatic{
      static int a = 3;
      static int b;

      static void meth(int x)
      {
          System.out.println("x = " + x);
          System.out.println("a = " + a);
          System.out.println("b = " + b);
         
      }

      static {
          System.out.println("Static block initialized.");
          b = a*4;
      }
      public static void main(String[] args)
      {
          meth(42);
      }
  }
  一旦UseStatic被装载,所有的static语句被执行。首先,a被设置为3,接着static块执行(打印一条消息),最后,b初始化为a*4或12。然后调用main(),main()调用meth(),把42传递给x。3
  个println()语句引用两个static变量a和b,以及局部变量x。
  
  如有错误,请指教。


  
精彩图集

赞助商链接