Java final static關鍵字
阿新 • • 發佈:2018-12-02
Java中的final關鍵字
使用 final 關鍵字做標識有 “最終的” 含義。
final 可以修飾 類、方法、屬性、變數
final 修飾類: 則該類不允許被繼承
final 修飾方法:則該方法不允許被重寫
final 修飾屬性:
則該類的屬性不會進行隱式的初始化 (類的初始化屬性必須有值)或在構造方法中賦值 (兩者選其一)
修飾的屬性的初始化可以在編譯期,也可以在執行期,初始化後不能被改變
修飾的屬性表明是一個常數(建立後不能被修改)
final 修飾變數:則該變數的值只能賦值一次,即變數為常量
Java中的static關鍵字
使用 static 關鍵字做標識有 “靜態” 含義。
static 可以修飾 屬性、方法、程式碼段、內部類(靜態內部類或巢狀內部類)
static 修飾的屬性:
初始化在編譯期(類載入的時候),初始化後能被修改
修飾的屬性所有物件都只有一個值
修飾的屬性強調它們只有一個
static 修飾的屬性、方法、程式碼段跟該類的具體物件無關,不建立物件也能呼叫static修飾的屬性、方法等
static 和“this、super”勢不兩立,static跟具體物件無關,而this、super正好跟具體物件有關
static 不能修飾區域性變數
static final 和 final static
static final 和 final static 沒有什麼區別,只是通常的書寫方式為 static寫在前面
static final
static 修飾的屬性強調它們只有一個,final修飾的屬性表明是一個常數(建立後不能被修改);
static final修飾的屬性表示一旦給值,就不可修改,並且可以通過類名訪問。
static final也可以修飾方法,表示該方法不能被重寫,可以在不new物件的情況下呼叫。