首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JAVA中的静态初始化块、初始化块、构造方法的施行顺序

2012-12-27 
JAVA中的静态初始化块、初始化块、构造方法的执行顺序JAVA中的静态初始化块、初始化块、构造方法的执行顺序cla

JAVA中的静态初始化块、初始化块、构造方法的执行顺序
JAVA中的静态初始化块、初始化块、构造方法的执行顺序

class Test2  {      //构造方法      public Test2()      {          System.out.println("构造方法");      }      //初始化代码块      {          System.out.println("初始化代码块");      }      //静态初始化代码块      static       {          System.out.println("静态初始化代码块");      }          public static void main(String args[])      {          Test2 t1 = new Test2();          System.out.println("----------第二次实例化----------");          Test2 t2 = new Test2();      }  } 


结果:
静态初始化代码块
初始化代码块
构造方法
----------第二次实例化----------
初始化代码块
构造方法


当第一次实例化Test2后,执行顺序是:静态初始化代码块>初始化代码块>构造方法

当第二次实例化Test2后,执行顺序是:初始化代码块>构造方法

为什么第二次没有执行静态初始化块呢,因为静态初始化块只会在第一次装入系统的时候运行,当再次实例化的时候就不需要再执行了,因为已经存在了

热点排行