繼承Thread和實現Runnable接口創建線程的區別
採用Runnable接口實現線程:
優勢:
A、線程類只是實現了Runnable接口,還可以繼承其他的類
B、在這種方式下,可以多個線程共享同一個目標對象,所以很合適多個線程來處理同一份資源的情況,
從而可以將CPU、代碼和數據分開,形成清晰的模型,較好的面相對象思想。
劣勢:編程稍微複雜,如果需要訪問當前線程需要用Thread.currentThread方法來獲取
採用繼承Thread類的方式實現線程:
優勢:編寫簡單,如果要獲得當前線程直接this即可
劣勢:線程類繼承了Thread,不能在繼承其他類
相對而言,用Runnable的方式更好,具體可以根據當前需要而定;