静态代码块

class A{
  static{
  System.out.print("a");
   }
 
}

class Static{
  static{
   System.out.print("b");
   }


  public static void main(String args[]){
      System.out.print("c");
      A a = new A();
      A aa = new A();
      System.out.print("d");
  }

  static {
   System.out.print("e");
  }
}

/*打印的结果为becad.因为静态代码块是对类进行初始化的,在类的加载时就执行的。静态代码块只执行一次,所以在new A时,只输出了一个a.
*/

 

 

class A{

 {

 System.out.println("a");

}

static{

 System.out.println("b");

}

 

A{

 System.out.println("c");

}

}

 

当new A时,打印的结果是b a c;执行的顺序是静态代码块->构造代码块->构造函数。

posted on 2015-08-24 08:10  亨通K  阅读(145)  评论(0编辑  收藏  举报