English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
新しい実行スレッドを作成する方法は二つあります。一つは、Threadクラスのサブクラスとしてクラスを宣言することです。そのサブクラスはThreadクラスのrunメソッドをオーバーライドする必要があります。その後、サブクラスのインスタンスを割り当てて起動することができます。
スレッドを作成するもう一つの方法は、Runnableインターフェースを実装するクラスを宣言することです。そのクラスはrunメソッドを実装します。そのクラスのインスタンスを割り当て、Threadの作成時にそのインスタンスをパラメータとして渡し、スタートします。
各スレッドには識別に使用される名前があります。複数のスレッドが同じ名前を持つ可能性があります。スレッドの作成時に名前が指定されていない場合、新しい名前が生成されます。
シリアル番号 | キー | 線 | 実行可能 |
---|---|---|---|
1 | 基本的な | スレッドはクラスです。スレッドを作成するために使用されます | Runnableは機能インターフェースであり、スレッドを作成するために使用されます |
2 | メソッド | 様々なメソッドを持っています、これにはstart() およびrun() | 抽象メソッドしか持っていません run() |
3 | 各スレッドはユニークなオブジェクトを生成し、それに関連付けます | 複数のスレッドが同じオブジェクトを共有します。 | |
4 | 記憶 | 必要なメモリが多い | 必要なメモリが少ない |
5 | 限界 | Javaでは多重継承は許可されていないため、Threadクラスを拡張した後は他のクラスを拡張できません | クラスが実行可能インターフェースを実装している場合、クラスは別のクラスを拡張できます。 |
class RunnableExample implements Runnable{ public void run(){ System.out.println("Thread is running for Runnable Implementation"); {} public static void main(String args[]){ RunnableExample runnable=new RunnableExample(); Thread t1 =new Thread(runnable); t1.start(); {} {}
class ThreadExample extends Thread{ public void run(){ System.out.println("Thread is running"); {} public static void main(String args[]){ ThreadExample t1=new ThreadExample(); t1.start(); {} {}