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

Unterschied zwischen Thread und Runnable in Java

Es gibt zwei Methoden, um neue Ausführungs Threads zu erstellen. Eine Möglichkeit ist, eine Klasse als Unterklasse der Thread-Klasse zu deklarieren. Diese Unterklasse sollte die Methode run der Thread-Klasse überschreiben. Anschließend kann eine Instanz der Unterklasse zugewiesen und gestartet werden.

创建线程的另一种方法是声明一个实现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 ist 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 ist running");
   }
   public static void main(String args[]){
      ThreadExample t1=new ThreadExample();
      t1.start();
   }
}