天天看點

靜态代碼塊(二)

public  class Person{

int num=8;
Person(){
 
System.out.println("1");

}


//給類初始化

static {

System.out.println("c");

//System.out.println(num);-->靜态代碼塊不能調用this.num

}

//為對象初始化

{

System.out.println("2");

//System.out.println(num);可以使用

}

Person(int x){

System.out.println("3");

}


}
//******************************************
//靜态代碼塊
 /**
  * 特點:随着類的加載而執行,隻執行一次,并優先于main函數執行
  * 用于給類進行初始化
  */
 public class StaticCodeDemo {
 static {
System.out.println("a");

 }

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new Person(4); //a b c  2  3
/* new Person();
          new Person();
          System.out.println("over");*/
}
static {
System.out.println("b");

}}
//**********************************************
結果:
a
 b
 c
 2
 3