final關鍵字 靜態 static

2021-09-25 08:14:50 字數 1438 閱讀 7158

●final關鍵字

-final關鍵字可以修飾成員變數,也可以修飾區域性變數

-final關鍵字可以修飾在方法上

-final關鍵字可以修飾在類上

final修飾在變數上:

final修飾的變數只能被賦值一次,不能修改

final修飾在成員變數上,必須直接給初值

final修飾在區域性變數是,可以先宣告後給初值

final修飾在方法上:

這個方法不能被重寫

final修飾在類上:

這個類就不能被繼承

string類就是final類

●靜態(static)

-static關鍵字可以修飾成員變數,不能修飾區域性變數

-static關鍵字可以修飾方法

-static關鍵字可以修飾一段**,靜態**塊

-靜態的屬於類,不屬於物件;非靜態的屬於物件,不屬於類

static修飾成員變數:

在方法區開闢空間,就佔乙份記憶體,任何方法都可以修改這個靜態變數

靜態變數做一些共用或公用的計數(慎用),不安全

一般情況下用static和final共同修飾成員變數

static修飾在方法:

在方法區中開闢空間

靜態方法和非靜態方法在方法區中的儲存是沒有區別的

靜態方法可以被過載

靜態方法可以直接通過類名來呼叫

(頻繁使用且不需要修改資料的方法設定為static)    

在靜態方法中不能使用this,this屬於物件,而不屬於類

靜態的屬於類,而不屬於物件

static修飾**塊:static{}

靜態**塊針對的是類,對類進行初始化

靜態**塊隨著類載入而載入到靜態區,在類建立物件或執行方法之前執行,只執行一次

先執行靜態**塊->類**塊->建構函式塊

總結:靜態的方法只能訪問靜態的變數和靜態的方法

非靜態的方法可以訪問靜態變數和靜態方法也可以訪問非靜態的變數和方法

靜態的方法既可以用物件diaoy(不建議),也可以用類名呼叫(建議)

靜態+常量 static final同時修飾

一般都是公有的靜態的final變數

public static final int file_block_size=4*1024*1024    

公有的靜態的final修飾的的量名字都是大寫的,單詞間用下劃線分隔

一般出現在這樣的類中

public class sysconstant

直接用sysconstant.file_block_size來取出值即可

static關鍵字 final 關鍵字

特點 隨著類的載入而載入,也就是說靜態會隨著類的消失而消失,說明他的生命週期最長 靜態變數 static 關鍵字修飾成員變數,使用 類名.變數名 的形式來訪問,也可以使用 例項物件.變數名 的形式來訪問。靜態方法 static 關鍵字修飾成員函式,靜態方法可以使用 類名.方法名 的形式來訪問,也可以...

static關鍵字 final關鍵字

static關鍵字 靜態的 1,特點 可以修飾成員變數,成員方法 隨著類的載入而載入,優先於物件載入 只載入一次,就會一直存在,不再開闢新空間 全域性唯一,全域性共享 可以直接被類名呼叫 靜態只能呼叫靜態,非靜態可以隨意呼叫 總結 1,被static修飾後的特點 全域性共享 可以被類名直接呼叫 載入...

static 關鍵字 final關鍵字

一旦用了static 關鍵字,就不在屬於物件自己 而是屬於類。這個類裡的物件,都共享乙份。沒有static關鍵字那麼首先建立物件然後在通過物件才能使用它。靜態不能直接訪問非靜態 原因 在記憶體中是現有的靜態內容 後 有的非靜態內容 靜態方法中不能用this 原因this代表當前物件,通過誰呼叫的方法...