java類執行順序

2021-07-23 13:52:34 字數 1050 閱讀 3243

先執行父類的靜態變數和靜態**塊,如果有初值為其賦值,沒有就賦值預設初始值

執行當前類的靜態變數和靜態**塊,如果有初值為其賦值,沒有就賦值預設初始值

執行當前類成員的預設賦值,int-0, boolean - false等

執行當前類的構造方法,顯示或者掩式呼叫父類的構造方法,如果構造方法**塊中有this,則在父類構造中就表示呼叫父類的屬性,子類中就是呼叫子類的屬性;如果父類還有父類的話,會呼叫它的父類構造方法

執行父類的非靜態成員賦預設的初始值, int -0 boolean-false等

如果父類成員有顯示賦值,則為其賦值

執行父類構造方法的其他**塊

如果子類成員有顯示賦值,則為其賦值

執行子類構造方法其他**塊

出個題考考:

public

class

test

extends

father

public

void

display()

/** * @param args

*/public

static

void

main

(string[

] args)

}class

father

public

void

display()

}

答案在這兒:20–

0–222–

222–

總結:靜態變數先父類後子類

這兒精簡重點:

public

father()

搞定,如有不對請指正

public類裡、外都可以訪問該成員,public、protect繼承時內外都可以呼叫該方法

protected類裡面可以訪問該成員,外面不可訪問,繼承時也是只能在類裡面呼叫

private類裡面可以訪問,繼承不可訪問,友元可以訪問

java類執行順序

如果父類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 如果類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 將類的成員賦予初值 原始型別的成員的值為規定值,例如int型為0,float型為0.0f,boolean型為false 物件型別的初始值為null 如果構造方...

java 類執行順序

package com.accdays.keyword 類中 的執行順序 1.載入時 static 塊會執行一次,且以後不會再執行 2.塊 例項化屬性字段 相同執行級別,按照 順序執行 3.建構函式 如果有父類,先按照上面順序執行父類的 執行順序 1.先父類再子類 2.先 static 塊 只執行一...

Java類載入執行順序

簡要記錄類的載入執行順序 先說結論 父類靜態 塊 變數 子類靜態 塊 變數 父類普通 變數 塊 父類構造器 子類普通 變數 塊 子類構造器 具體執行過程 程式先找到main函式,不管此時有沒有使用new進行建立物件,都會將涉及到的類 例如父類 進行類載入 發現son類有乙個父類father類 初始化...