Java的源碼:關鍵字章

 

1.volatile:volatile修飾的成員變量在每次被線程訪問時,都強迫從共享內存中重讀該成員變量的值。而且,當成員變量發生變化時,強迫線程將變化值回寫到共享內存。
在兩個或者更多的線程訪問的成員變量上使用volatile。當要訪問的變量已在synchronized代碼塊中,或者爲常量時,不必使用。
2.native是方法修飾符,native是由另外一種語言實現的本地方法
3.final關鍵字:修飾類、方法和變量(包括成員變量和局部變量)
    類:當用final修飾一個類時,表明這個類不能被繼承。(final類中的成員變量可以根據需要設爲final,但是final類中的所有成員方法都會被隱式地指定爲final方法)
    方法:如果只有在想明確禁止該方法在子類中被覆蓋的情況下才將方法設置爲final的(private方法會隱式地被指定爲final方法)
    
    變量:如果是基本數據類型的變量,則其數值一旦在初始化之後便不能更改;如果是引用類型的變量,則在對其初始化之後便不能再讓其指向另一個對象。(在編譯期間能知道它的確切值,則編譯器會把它當做編譯期常量使用。只有在編譯期間能確切知道final變量值的情況下,編譯器纔會進行這樣的優化,但聲明時調用了其他方法,獲取的是返回值時,則不會宏替換)
4.static:
    成員變量:static修飾的成員稱爲類成員或者靜態成員,static關鍵字可以修飾成員變量和方法,來讓它們變成類的所屬,而不是對象的所屬,作用於成員變量用來表示只保存一份副本。
    方法:static修飾成員方法最大的作用,就是可以使用"類名.方法名"的方式操作方法,避免了先要new出對象的繁瑣和資源消耗
    
    靜態塊:第一次去使用一個類時,就會觸發該類的成員初始化。那就是當我們初始化static修飾的成員時,可以將他們統一放在一個以static開始,用花括號包裹起來的塊狀語句中
    
    總結:
    用來修飾成員變量,將其變爲類的成員,從而實現所有對象對於該成員的共享;
    用來修飾成員方法,將其變爲類方法,可以直接使用“類名.方法名”的方式調用,常用於工具類;
    靜態塊用法,將多個類成員放在一起初始化,使得程序更加規整,其中理解對象的初始化過程非常關鍵;
    靜態導包用法,將類的方法直接導入到當前類中,從而直接使用“方法名”即可調用類方法,更加方便。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章