靜態代碼塊--》非靜態代碼塊--》構造方法
阿新 • • 發佈:2017-06-23
println int span string ring system new str 對象初始化
class ccc1 {
static
{
System.out.println("ccc1---1");
}
public ccc1()
{
System.out.println("ccc1---2");
}
{
System.out.println("ccc1---3");
}
}
public class ccc extends ccc1 { static { System.out.println("ccc1"); } public ccc () { System.out.println("ccc2");
}
{
System.out.println("ccc3");
}
public static void main(String[] args) {
ccc t = new ccc();
// ccc t = new ccc();
}
}
/* 靜態代碼塊在非靜態代碼塊之前執行(靜態代碼塊--》非靜態代碼塊--》構造方法) 全局靜態初始化:在對象初始化之前已加載到內存中與對象初如化無關 ccc1---1 :ccc1靜態函數 ccc1 :ccc靜態函數
ccc1子對像初始化 ccc1---3 :ccc1非靜態代碼塊 ccc1---2 :ccc1構造函數
ccc2父對像初始化 ccc3 :ccc靜態函數 ccc2 :ccc購造函數 */
public class ccc extends ccc1 { static { System.out.println("ccc1"); } public ccc () { System.out.println("ccc2");
/* 靜態代碼塊在非靜態代碼塊之前執行(靜態代碼塊--》非靜態代碼塊--》構造方法) 全局靜態初始化:在對象初始化之前已加載到內存中與對象初如化無關 ccc1---1 :ccc1靜態函數 ccc1 :ccc靜態函數
ccc1子對像初始化 ccc1---3 :ccc1非靜態代碼塊 ccc1---2 :ccc1構造函數
ccc2父對像初始化 ccc3 :ccc靜態函數 ccc2 :ccc購造函數 */
靜態代碼塊--》非靜態代碼塊--》構造方法