2021Java開發面試題:static關鍵字的理解?
java基礎面試題
static 關鍵字主要有以下四種使用場景:
修飾成員變數和成員方法: 被 static 修飾的成員屬於類,不屬於單個這個類的某個物件,被類中所有物件共享,可以並且建議透過類名呼叫。被static 宣告的成員變數屬於靜態成員變數,靜態變數 存放在 Java 記憶體區域的方法區。呼叫格式:類名.靜態變數名 類名.靜態方法名()
靜態程式碼塊: 靜態程式碼塊定義在類中方法外, 靜態程式碼塊在非靜態程式碼塊之前執行(靜態程式碼塊—>非靜態程式碼塊—>構造方法)。 該類不管建立多少物件,靜態程式碼塊只執行一次.
靜態內部類(static修飾類的話只能修飾內部類): 靜態內部類與非靜態內部類之間存在一個最大的區別: 非靜態內部類在編譯完成之後會隱含地儲存著一個引用,該引用是指向建立它的外圍類,但是靜態內部類卻沒有。沒有這個引用就意味著:1. 它的建立是不需要依賴外圍類的建立。2. 它不能使用任何外圍類的非static成員變數和方法。
靜態導包(用來匯入類中的靜態資源,1.5之後的新特性): 格式為:import static 這兩個關鍵字連用可以指定匯入某個類中的指定靜態資源,並且不需要使用類名呼叫類中靜態成員,可以直接使用類中靜態成員變數和成員方法。
近期我將蒐集到的阿里、騰訊、美團、網易等公司 19、20 年的面試題技術點,梳理成一份含有100道Java面試題的資料包,送給大家,希望大家都能順利透過面試,拿下高薪。趕緊碼住吧~~~