English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Javaにおけるスレッドと実行可能の違い

新しい実行スレッドを作成する方法は二つあります。一つは、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();
   {}
{}