<init>方法 Java在編譯以後會在字節碼文件中生成<init>方法,這稱爲實例構造器。它會將變量實例化、語句塊、調用父類的構造器等操做收斂到<init>方法中。收斂順序爲:父類變量初始化、父類語句塊、父類構造函數、子類變量初始化、子類語句塊、子類構造函數。函數
<clinit>方法 Java在編譯以後會在字節碼文件中生成<clinit>方法,這稱爲類構造器。他會將靜態變量初始化、靜態語句塊收斂到<clinit>方法中。收斂順序爲:父類靜態變量初始化、父類靜態語句塊、子類靜態變量初始化、子類靜態語句塊。對象
<init>方法在對象實例化執行的;<clinit>方法在類加載過程當中執行的。因此<clinit>方法必定比<init>方法先執行。it