關於Java 中 static{}此寫法說明
阿新 • • 發佈:2019-02-01
前言 : 再翻看某大神原始碼時 突然發現一個寫法
static{
……..//省略一大堆程式碼
}
好奇下便研究研究此寫法的意義。與大家分享下。
上程式碼: 首先看 class A 中的程式碼:
static {
System.out.println("呼叫了");
}
public void setStr(String str){
System.out.println("str :"+ str);
}
public static void main(String[] args) {
System.out .println("...");
}
然後看 ClassB
MyText t1 = new MyText();
t1.setStr("start");
MyText t2 = new MyText();
t2.setStr("end");
輸出結果
呼叫了
str :start
str :end
說明 static{} 保持了方法內操作的唯一性。 適合用一些載入jni操作。 保證只操作一次,類似Application.
static{} 內的操作是走在所以當前class 內方法的最前端。 Num.1
按照我的理解呢感覺這個就像是一個靜態的構造方法。//注意 構造方法是不可以靜態的。