繼承關係在記憶體中的載入順序

2021-09-25 20:58:18 字數 453 閱讀 4372

a.先載入父類再載入子類
(有靜態資源優先載入靜態資源)

1.宣告子類的物件

2.編譯類載入時找到子類發現它有繼承關係,所以到它的構造器中找到super()方法通過呼叫關係找到它繼承的父類。

(子類規定要預設通過super()呼叫父類構造器,就是為了在載入子類時能找到它的父類把屬性預先載入進記憶體,供子類使用)

3.載入父類的所有資訊

4.最後載入子類的資訊

b.類中載入順序

(如果有靜態屬性或方法,優先載入進記憶體)

1.為物件分配記憶體空間,首先預設給物件初始化預設值(例如:string str = null;)

2.如果例項的變數已經顯示初始化,將顯示初始化的值賦給例項變數(把預設值覆蓋,顯示初始化記憶體也會自動預設賦值)

3.**塊

4.呼叫構造器

5.返回物件的位址器

java基礎 繼承關係類載入順序問題

created by fei on 2017 5 31.public class sonclass extends parentclass static public static void main string args class parentclass static 執行結果 parentc...

類連線 繼承中類載入的順序

繼承中,類載入的順序 1 父類的靜態 塊,子類的靜態 塊 2 父類的初始化塊,父類的構造方法 3 子類的初始化塊,子類的構造方法 public class importantdemo system.out.println 開始了 system.out.println main new test1 b...

程式在記憶體中的分布

在現代的作業系統中,當我們說到記憶體,往往需要分兩部分來講 物理記憶體和虛擬記憶體。從硬體上講,虛擬空間是cpu內部的定址空間,位於mmu之前,物理空間是匯流排上的定址空間,是經過mmu轉換之後的空間。一般我們所說的程式在記憶體中的分布指的就是程式在虛擬記憶體中的儲存方式。從低位址到高位址,可分為下...