日常 13

一如初见233發表於2024-10-14

java課知識:
在定義變數時,Java要求必須顯式初始化變數;物件變數如果不引用一個真實的物件,則必須宣告為null.
當物件不再使用時,JVM會回收MyClass物件所佔用的記憶體,這個過程稱為“垃圾回收。
當“”施加於原始資料型別變數時,是比較變數所儲存的資料是否相等當“”施加於引用型別變數時,是比較這兩個變數是否引用同一物件。引用代表地址,所以“==”實際上相當於比較兩個引用型別變數中儲存的物件地址是否相同。
類的構造:當建立一個物件時,它的構造方法會被自動呼叫。構造方法與類名相同,沒有返回值。如果類沒有定義建構函式,Java編譯器在編譯時會自動給它提供一個沒有引數的“預設構造方法”,如果類提供了一個自定義的構造方法,將導致系統不再提供預設構造方法。
類欄位按的初始化順序:執行類成員定義時指定的預設值或類的初始化塊,到底執行哪一個要看哪一個“排在前面”。執行類的建構函式。類的初始化塊不接收任何的引數,而且只要一建立類的物件,它們就會被執行。因此,適合於封裝那些“物件建立時必須執行的程式碼”。
靜態初始化塊的執行順序:靜態初始化塊只執行一次。建立子型別的物件時,也會導致父型別的靜態初始化塊的執行。