天天看點

類中可以包含哪些結構及執行順序

類中可以包含的内容(需要記)

1.成員變量(成員變量屬于方法,可以不賦初始值,當建立對象(調用構造方法時)會賦初始值)

2.方法

3.構造方法(特殊的方法):構造方法運作是從執行開始的(代碼的是實作過程是先編譯再運作),可以初始化成員變量(目的在于運作時能夠順利通過),若已被代碼塊指派,不會進行重新指派(非初始值)

4.代碼塊:以大括号{}包裹的都是代碼塊,代碼塊分靜态(有static修飾)和非靜态(無static修飾)

5.内部類

執行順序

1.代碼執行分為兩大部分:編譯→執行

2.代碼塊(靜态先于非靜态作用于編譯過程)→構造方法

3.當有繼承關系存在時:執行順序為父靜态代碼塊-子靜态代碼塊-父類非靜态代碼塊-父類構造方法-子類非靜态代碼塊1-子類構造方法(需要記)  

static

1.static表示靜态的當有static修飾時,儲存後即會存在與記憶體當中(靜态域),永久儲存,是以當我們用static修飾方法時,通過類名即可進行方法調用,無需建立對象。

2.拓展内容:static優先于對象存在,因為static的成員随着類的加載就已經存在。

記憶體内都包含什麼東西

1.靜态:當儲存時,即會存在于靜态域,永久進行儲存

2方法區:存放方法

3寄存器:計算目前代碼行數的

4棧(stack):==是通過棧内位址進行判斷,位址是以0x(代表16進制)開頭;棧記憶體放的是變量位址(局部變量/基本資料類型)

5堆(Heap):equals是通過堆來進行比較;堆記憶體的是真實的對象

注意:以上五個記憶體分區不是互相獨立存在的,會有互相交叉的情況。

繼續閱讀