Java 是一種物件導向程式設計語言,但不是純物件導向的語言,因為支援基本類型,如 int 、 char 等,程式碼會編譯成 byte code ,運行在負責抽象底層操作系統的 JVM(Java 虛擬機)上,語法類似於 C/C++,但是不提供像 pointers 指針這樣的低階編程功能,擁有跨平台、物件導向、泛型程式設計的特性,廣泛應用於各種系統, Learn Java 介紹各種實務是應用,如移動應用程式( Android 基於 Java )、桌面應用程式、Web 應用程式、客戶端-服務器應用程式、企業應用程式等。

ExecutorService in Java with Examples – Java 147

ExecutorService in Java with Examples 繼承 Executor,擴充了一些方法,協助管理和控制執行緒,定義了執行傳回結果的執行緒、一組執行緒和確定關閉狀態的方法,為了執行異步任務,實現了 Runnable 接口, Java ExecutorService Examples 包含 execute 方法,此外還有另一個可用的接口,submit 方法,實現了 Callable 接口,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingExecutorService in Java with Examples – Java 147

Java ExecutorService Methods – Java 147

Java ExecutorService Methods 多執行緒異步執行任務的接口,管理維護執行緒池、分配任務執行等,如果任務數多於可用執行緒數, ExecutorService in Java 可以將任務暫時放置佇列,並提供中斷,放棄等不同策略供選擇,以進行任務的下一步操作, ExecutorService Java Methods 介紹常見的 execute 、 submit 、 awaitTermination 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava ExecutorService Methods – Java 147

Difference Between Thread and Runnable in Java – Java 147

Difference Between Thread and Runnable in Java 多執行緒實現同時執行多任務,有兩種方式可以實現,一個是繼承 Thread ,覆寫 run 方法,另一個是實作 Runnable 介面,Difference Between Runnable and Thread in Java 提供這兩種應用方式,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingDifference Between Thread and Runnable in Java – Java 147

Java ConcurrentLinkedQueue Class – Java 147

Java ConcurrentLinkedQueue Class 執行緒安全鏈結非阻塞佇列,當佇列為空時,不會阻塞執行緒,通常用於多執行緒的應用程式,佇列會隨著元素的增加而動態成長, ConcurrentLinkedQueue Class in Java 介紹常見的 offer 、 poll 、 put 、 take 、 contains 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava ConcurrentLinkedQueue Class – Java 147

ConcurrentLinkedQueue in Java with Examples – Java 147

ConcurrentLinkedQueue in Java with Examples 其佇列可以隨著元素的增加而動態增長,但是,如果沒有足夠的記憶體,則會拋出 OutOfMemoryError,是執行緒安全的無界佇列, Java ConcurrentLinkedQueue Examples 介紹常見的 forEach 、 iterator 、 spliterator 、 trySplit 、 drainTo 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingConcurrentLinkedQueue in Java with Examples – Java 147

Java ConcurrentLinkedQueue Methods – Java 147

Java ConcurrentLinkedQueue Methods 並發鏈結佇列是一個無界、執行緒安全且非阻塞的佇列,當佇列為空時,不會阻塞執行緒,會傳回 null 值,由於是無界的,如果沒有額外的記憶體,來增加新元素時,將會拋出 OutOfMemoryError , ConcurrentLinkedQueue Java Methods 介紹常見的 add 、 peek 、 remove 、 clear 、 size 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava ConcurrentLinkedQueue Methods – Java 147

Java LinkedBlockingQueue Class – Java 147

Java LinkedBlockingQueue Class 執行緒安全鏈結阻塞佇列,是通過悲觀鎖來保證的,通常用於多執行緒的應用程式, 建立時若無固定大小容量, 佇列會隨著元素的增加而動態成長, LinkedBlockingQueue Class in Java 介紹常見的 offer 、 poll 、 put 、 take 、 contains 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava LinkedBlockingQueue Class – Java 147

LinkedBlockingQueue in Java with Examples – Java 147

LinkedBlockingQueue in Java with Examples 是執行緒安全的無界佇列,表示在建立時若未指定佇列的大小,其佇列可以隨著元素的增加而動態增長,但是,如果沒有足夠的記憶體,則會拋出 OutOfMemoryError ,如果有給定大小,那就是固定容量的佇列, Java LinkedBlockingQueue Examples 介紹常見的 forEach 、 iterator 、 spliterator 、 trySplit 、 drainTo 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingLinkedBlockingQueue in Java with Examples – Java 147

Java LinkedBlockingQueue Methods – Java 147

Java LinkedBlockingQueue Methods 是基於鏈結節點的可選邊界阻塞佇列,如果有給定大小,那就是固定容量,如果沒給大小就是無界佇列,實際上是 Integer.MAX_VALUE 最大值,當嘗試將元素放入已滿佇列,將會導致操作阻塞,同樣地,從空佇列中獲取元素的操作也會被阻塞, LinkedBlockingQueue Java Methods 介紹常見的 add 、 peek 、 remove 、 clear 、 size 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava LinkedBlockingQueue Methods – Java 147

Java ArrayBlockingQueue Class – Java 147

Java ArrayBlockingQueue Class 通常用於多執行緒的應用程式, Queue 的大小是固定的,一旦建立後,便無法再更改其容量,當佇列已滿時,將元素放入佇列,將會導致操作阻塞,同樣地,當佇列無元素時,取得元素也會被阻塞, ArrayBlockingQueue Class in Java 介紹常見的 offer 、 poll 、 put 、 take 、 contains 等方法,本篇增加了範例,並透過 JUnit 4 單元測試來驗證產出結果。

Continue ReadingJava ArrayBlockingQueue Class – Java 147