向 Java 執行緒傳遞參數
在 Java 中,執行緒是透過實作 Runnable 介面來建立的。預設情況下,Runnable 物件不帶任何參數。但是,如果需要向線程傳遞參數,有兩種策略:包裝類別或匿名類別。
包裝類別
將參數傳遞給執行緒的一種方法執行緒就是使用包裝類別。這涉及創建一個實現 Runnable 介面並在其建構函數中接受所需參數的類別。以下是一個範例:
<code class="java">public class ParameterizedRunnable implements Runnable { private final Object parameter; public ParameterizedRunnable(Object parameter) { this.parameter = parameter; } public void run() { // Use the passed parameter here } }</code>
然後您可以使用此類建立執行緒並向其傳遞參數:
<code class="java">Runnable runnable = new ParameterizedRunnable(myParameter); new Thread(runnable).start();</code>
匿名類別
匿名類別也可以用來向執行緒傳遞參數。匿名類別是同時定義和實例化的類別。以下是使用匿名類別向執行緒傳遞參數的範例:
<code class="java">Thread thread = new Thread(() -> { // Use the passed parameter here }, myParameter); thread.start();</code>
在此範例中,傳遞給Thread 建構子的lambda 表達式定義了一個實作Runnable 介面並接收myParameter 的匿名類別作為其參數。
以上是如何向Java執行緒傳遞參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!