原创 Java學習筆記70. 線程的生命週期

人有生老病死,線程也有。在生滅之間的線程,細分爲5種狀態:1. 創建: 多線程實例之後,未使用start方法啓動線程之前2. 就緒:使用start方法啓動線程,但是沒有被CPU調度進入運行3. 運行:被CPU調度進行運行4. 阻塞/等待:

原创 編程學習有感

學習Java一個多月時間了。開始學的時候進步很慢。一時也找不到合適的方法。就一邊看書,一邊練習書上的例子。有時候覺得例子簡單,就跳過去了。有時候個別章節讀不太懂,也就放過去了。這樣下來,似乎進度很快,但是其實很多細節都沒有搞懂。越學到後面

原创 Java學習筆記78. 線程的中斷入門 —— interrupt方法

關於線程的中斷的知識點比較多,這裏暫時淺嘗輒止,只使用interrupt方法做一個例子,顯示中斷方法的使用。例子如下:public class testInterrupt extends Thread{        //線程類testI

原创 Java學習筆記75. 線程的睡眠方法

人在工作的時候,不會24小時一直工作,會有休息的時間,也會有喫飯的時間,這就是工作中間的間隔。線程也一樣,有時候也需要間隔一點時間,再做下一個動作。這就是sleep方法的作用了,如下:class testSleep extends Thr

原创 Java學習筆記81. 線程間的通信 —— wait( ),notify( ),和 notifyAll( )

線程之間是可以通信的,線程間通信的方法有wait,notify和notifyAll。這3個方法是定義在Object類裏面的,一切類和對象都天然地可以使用者3個方法。但是使用這些方法的前提是在synchronized修飾的語句塊下。wait

原创 Java學習筆記74. Java線程的優先級

不同的線程就像是不同的工作小分隊,而系統的計算資源就像是工作場所,工作場所一次只能讓一個線程來工作,與此同時,其它的線程就需要等待。但是不同的小分隊的重要程度不同,就應該分別看待,這就是優先級的設定。Java用setPriority方法來

原创 Java學習筆記83. 枚舉的構造方法和接口

枚舉相當於一個類,所以它也是有構造方法的。如果顯式地寫出了枚舉的構造方法,那麼就必須在創造枚舉對象時,相應地顯式引用,否則就會出錯。這也是Java的運行機制之一。枚舉中的每一個元素,其實就相當於一個對象的引用,這個元素可以有方法和字段。比

原创 Java學習筆記68. 通過Runnable接口創建多線程

我們知道,Java中是不允許多重繼承的,有的類需要繼承某些特性,同時也需要創建多線程。這樣,就不能同時繼承Thread類了。爲了應對這種情況,java中可以運用Runnable接口來創建多線程,其語法如下:class 類名稱 implem

原创 Java學習筆記72. 操作線程 -- 判斷線程是否啓動

isAlive( ) 方法是用來判斷線程是否啓動的方法。它的返回值是布爾型,啓動爲true,沒啓動爲false。下面的代碼說明了isAlive的使用方法:public class demoisAlive extends Thread{  

原创 Java學習筆記77. 線程的等待方法 —— join( )

對於一個已經在運行的線程,可以使用join方法使其對CPU進行獨佔,一直到運行完這個線程後,再運行其它的線程。現在先來總結一下join的無參方法:class demojoin extends Thread{        //線程類

原创 Java學習筆記83. 枚舉類和常用的枚舉方法

枚舉實際上是一個類,在java.lang包裏,java爲枚舉類定義了許多方法,使用也很簡單。下面用幾個例子來總結一下:/*使用values()方法遍歷輸出當前對象的取值範圍,values方法的返回值就是當前對象的取值範圍*/ enum c

原创 Java學習筆記67. 創建多線程的方法 -- 通過繼承thread類創建多線程

要想使用多線程,就要首先創建多線程。創建多線程的方法,一種是通過創建thread類的對象來創建多線程,一個是通過runnable接口創建多線程。首先來總結通過創建thread類的對象的方法:class 類名稱 extends Thread

原创 Java學習筆記80. 關於死鎖

死鎖,本質上是一個哲學問題。當一個線程先佔有了同步類(synchronized)的資源A,同時接着要求同步類的資源B。而恰恰在這中間,另一個線程捷足先登,佔有了同步類的資源B,同時接着要求資源A。而此時資源A已經被第一個線程佔有了。於是,

原创 Java學習筆記82. 枚舉 enum

枚舉就是列舉。就是把一些屬性值列舉出來,組成一個列舉的集合。枚舉中的值通常都是見明知義的屬性值。這樣可以增加程序的可讀性,也可以降低書寫程序的難度。枚舉的定義方法是:enum 枚舉名 {屬性1,屬性2,屬性3,...};枚舉使用時使用 屬