JDK原始碼解析 Stack

2021-10-09 13:23:44 字數 796 閱讀 6397

stack是棧的實現類,棧的特點是先進後出。繼承了vector,重寫了5個方法,對vector進行了擴充套件。

繼承了vector

3.1push

呼叫父類的addelement方法,新增到陣列的尾部,也就是棧頂

public e push

(e item)

3.2 pop

出戰操作。

public

synchronized e pop()

3.3 peek

呼叫父類的elementat方法,傳入引數是size()-1,即陣列元素的最後乙個,也就是棧頂。

public

synchronized e peek()

3.4 empty

判斷是否為空

public

boolean

empty()

3.5 search

呼叫父類的lastindexof方法,從棧頂開始尋找元素o,若找到返回它在陣列中的下標位置。若沒有返回-1.

public

synchronized

intsearch

(object o)

return-1

;}

Stack原始碼解析 基於JDK1 8

總結public class stack extends vector stack繼承自vector,所以是執行緒安全的。public synchronized e pop public synchronized e peek public e push e item public synchron...

JDK原始碼解析 ThreadLocal

說明 本文是jdk 1.8版本 1.簡介 threadlocal 又叫做執行緒本地變數,也被稱為執行緒本地儲存。threadlocal 為 變數 在每乙個執行緒中建立 乙個 副本 不是原來變數的引用 每乙個執行緒都會獨自擁有變數副本,而不會相互影響。2.實現方式 1 set 方法,因為執行緒thre...

JDK原始碼解析 StringBuilder

stringbuilder和stringbuffer一樣,都是繼承自抽象類abstractstringbuilder類,也是乙個可變的字串行。stringbuilder和stringbuffer非常相似,甚至有互相相容的api,不過,stringbuilder不是執行緒安全的,這是和stringbu...