Java成神之路-周計劃
開這篇部落格,意在從頭到尾系統學習Java,按周計劃進行,沒有特別意外情況,都是每週日更新blog~
一、11.19-11.25:
Java基礎知識-閱讀原始碼
Java基礎知識-Java各種變數型別
熟悉String的使用,熟悉String的各種函式
1、replaceFirst、replaceAll、replace區別
自動拆裝箱
二、11.26-12.02:
熟悉Java中各種關鍵字
1、instanceof
instanceof 是 Java 的一個二元操作符,類似於 ==,>,< 等操作符。
instanceof 是 Java 的保留關鍵字。它的作用是測試它左邊的物件是否是它右邊的類的例項,返回 boolean 的資料型別。
3、synchronized
synchronized 是 Java 中的關鍵字,是利用鎖的機制來實現同步的。
鎖機制有如下兩種特性:
-
互斥性:即在同一時間只允許一個執行緒持有某個物件鎖,通過這種特性來實現多執行緒中的協調機制,這樣在同一時間只有一個執行緒對需同步的程式碼塊(複合操作)進行訪問。互斥性我們也往往稱為操作的原子性。
可見性:必須確保在鎖被釋放之前,對共享變數所做的修改,對於隨後獲得該鎖的另一個執行緒是可見的(即在獲得鎖時應獲得最新共享變數的值),否則另一個執行緒可能是在本地快取的某個副本上繼續操作從而引起不一致。
5、static
“static方法就是沒有this的方法。在static方法內部不能呼叫非靜態方法,反過來是可以的。而且可以在沒有建立任何物件的前提下,僅僅通過類本身來呼叫static方法。這實際上正是static方法的主要用途。”
這段話雖然只是說明了static方法的特殊之處,但是可以看出static關鍵字的基本作用,簡而言之,一句話來描述就是:
方便在沒有建立物件的情況下來進行呼叫(方法/變數)。
很顯然,被static關鍵字修飾的方法或者變數不需要依賴於物件來進行訪問,只要類被載入了,就可以通過類名去進行訪問。
static可以用來修飾類的成員方法、類的成員變數,另外可以編寫static程式碼塊來優化程式效能。