剖析JDK原始碼 Runnable 9

2021-10-10 04:27:06 字數 828 閱讀 4691

@functionalinte***ce

public

inte***ce

runnable

public

abstract

void

run(

);

連start()都沒有,run()建立的執行緒,要怎麼去啟動這個執行緒呢?

public

class

myrunnabletest

}class

myrunnable

implements

runnable

@override

public

void

run()}

}

public

class

myrunnabletest}-

class

myrunnable

implements

runnable

@override

public

void

run()}

}

正確使用runnable 建立執行緒的步驟:

1、新建乙個實現runnable 的類myrunnable ,重寫run()裡面的操作。

2、例項化乙個myrunnable 類 myrunnable 。

3、例項化乙個thread物件,把myrunnable 傳參給thread。

4、啟動thread。

這時應該知道抽離這個介面的作用了吧。

JDK1 8 Optional 原始碼剖析

容器物件,可能包含也可能不包含非null值。如果存在值,將返回並且將返回該值。提供依賴於是否存在包含值的其他方法,例如 如果值不存在則返回預設值 和 如果值存在則執行 塊 返回具有指定的當前非空值的。public static optionalof t value 私有的建構函式 private o...

原始碼剖析 Hashtable 原始碼剖析

hashtable同樣是基於雜湊表實現的,同樣每個元素都是key value對,其內部也是通過單鏈表解決衝突問題,容量不足 超過了閾值 時,同樣會自動增長。hashtable也是jdk1.0引入的類,是執行緒安全的,能用於多執行緒環境中。hashtable同樣實現了serializable介面,它支...

JDK1 8 ArrayList原始碼剖析(二)

jdk1.8中新增的特性 1.void foreach consumer super e action jdk8中新特性,對list中每個元素分別進行操作,如 arraylistal new arraylist al.add 0 al.add 1 al.add 2 al.add 3 al.forea...