1、建立執行緒-繼承thread類
建立執行緒
class demo extends thread
public void run() }
class mythreaddemo
}
售票程式
class ticket extends thread }}
class myticketdemo
}
2、建立執行緒-實現runnable介面
售票程式
class ticket implements runnable }}
class myticketdemo2
}
3、多執行緒的安全問題,同步**塊synchronized
售票程式,synchronized
class ticket implements runnable
catch (exception e)
system.out.println(thread.currentthread().getname() + "...tick sale..." + tick--);}}
} }}class myticketdemo2
}
同步的前提:
1,必須要有兩個或者兩個以上的執行緒。
2,必須是多個執行緒使用同乙個鎖。
必須保證同步中只能有乙個執行緒在執行。
好處:解決了多執行緒的安全問題。
弊端:多個執行緒需要判斷鎖,較為消耗資源
java畢向東聽課筆記14(執行緒3)
死鎖 為什麼出現 同步中巢狀同步,而鎖卻不同。在開發中,應該盡量避免死鎖。執行緒間的通訊 其實就是多個執行緒在操作同一資源,但是操作的動作不同。等待喚醒機制 wait notify notifyall 都使用在同步中,因為要對持有監視器 鎖 的執行緒操作。所以要使用在同步中,因為只有同步才有鎖。為什...
java畢向東聽課筆記10(異常)
異常 一般情況下,函式內出現異常,函式上需要宣告。發現列印的結果中只有異常的名稱,卻沒有異常的資訊。因為自定義的異常並未定義資訊。如何定義異常資訊呢?因為父類中已經把異常資訊的操作都完成了。所以子類只要在構造時,將異常資訊傳遞給父類通過super語句。那麼就可以直接通過getmessage方法獲取自...
內部類 畢向東Java基礎教程學習筆記
內部類的訪問規則 1.內部類可以直接訪問外部類的成員,包括私有。之所以可以直接訪問外部類的成員,是因為內部類中持有外部類的引用,格式 外部類名.this 2.外部類要訪問內部類,必須建立內部類物件。訪問格式 1.當內部類定義在外部類的成員位置上並且非私有時,可以在外部其他類中,直接建立內部類的物件。...