Javaでのマルチスレッド呼び出しの方法は何ですか?
Javaで複数のスレッドを呼び出す方法には2つあります。
- Threadクラスを継承する:Threadクラスを継承したサブクラスを作成し、run()メソッドをオーバーライドし、run()メソッド内でスレッドの実行タスクを定義します。その後、サブクラスのオブジェクトを作成し、start()メソッドを呼び出してスレッドを起動します。
サンプルコード:
class MyThread extends Thread {
public void run() {
// 线程执行的任务
}
}
public class Main {
public static void main(String[] args) {
MyThread myThread = new MyThread();
myThread.start();
}
}
- Runnableインターフェースを実装する:Runnableインターフェースを実装したクラスを作成し、run()メソッドを実装して、その中でスレッドの実行タスクを定義します。そして、そのクラスのオブジェクトを作成し、Threadクラスのコンストラクタにそのオブジェクトをパラメータとして渡し、最後にThreadオブジェクトのstart()メソッドを呼び出してスレッドを開始します。
サンプルコード:
class MyRunnable implements Runnable {
public void run() {
// 线程执行的任务
}
}
public class Main {
public static void main(String[] args) {
MyRunnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();
}
}
両方の方法はマルチスレッドを呼び出すことができますが、推奨されるのはRunnableインターフェースを実装する方法です。Javaは単一継承なので、すでに他のクラスを継承している場合はThreadクラスを継承することができません。その場合は、Runnableインターフェースを実装してスレッドを作成することができます。さらに、Runnableインターフェースを実装することで、コードをより明瞭で拡張可能にすることができます。