package com.accdays.keyword;
/** * 類中**的執行順序:
* 1. 載入時:static 塊會執行一次,且以後不會再執行
* 2. {}**塊、例項化屬性字段 : 相同執行級別,按照**順序執行
* 3. 建構函式
* 如果有父類,先按照上面順序執行父類的**
* * 執行順序:
* 1. 先父類再子類
* 2. 先 static 塊【只執行一次】
* 3. 父類:
* 3. {}**塊、例項化屬性字段 : 相同執行級別,按照**順序執行
* 4. 建構函式
* 5. 子類重複父類的執行順序
* * 執行順序:
* 1. 先 static 塊。先當前類,再需要例項化的類。
* 2. {}**塊、例項化屬性字段 相同執行級別,按照**順序執行
* 3. 先父類無參構造方法【子類在自己的構造方法中,沒有明確的用super呼叫父類的構造方法時,則先呼叫父類的無參構造方法】
* 4. 例項化自己類的屬性
* 4. 先父類再子類
*/public class father ");
}person person = new person("father");
static
public father()
public static void main(string args)
}class children extends father
public children()
}class person
public person(string str)
}class grandfather
private person p=new person("grandfather");
public grandfather()
}
java類執行順序
如果父類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 如果類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 將類的成員賦予初值 原始型別的成員的值為規定值,例如int型為0,float型為0.0f,boolean型為false 物件型別的初始值為null 如果構造方...
java類執行順序
先執行父類的靜態變數和靜態 塊,如果有初值為其賦值,沒有就賦值預設初始值 執行當前類的靜態變數和靜態 塊,如果有初值為其賦值,沒有就賦值預設初始值 執行當前類成員的預設賦值,int 0,boolean false等 執行當前類的構造方法,顯示或者掩式呼叫父類的構造方法,如果構造方法 塊中有this,...
Java類載入執行順序
簡要記錄類的載入執行順序 先說結論 父類靜態 塊 變數 子類靜態 塊 變數 父類普通 變數 塊 父類構造器 子類普通 變數 塊 子類構造器 具體執行過程 程式先找到main函式,不管此時有沒有使用new進行建立物件,都會將涉及到的類 例如父類 進行類載入 發現son類有乙個父類father類 初始化...