Avatar ·

En Java : implements Runnable vs extends Thread — que choisir ?

Bonjour à tous ! J'ai commencé à étudier le multithreading en Java et je me suis perdu sur un point de base. Nous créons des threads de deux manières : soit en héritant de la classe Thread, soit en implémentant l'interface Runnable. Les deux semblent fonctionner, mais je ne comprends pas la différence fondamentale et quelle méthode est considérée comme correcte. Par exemple, j'ai écrit ce code : ```java // Méthode 1 : extends Thread class MyThread extends Thread { public void run() { System.out.println("Le thread fonctionne : " + Thread.currentThread().getName()); } } // Méthode 2 : implements Runnable class MyRunnable implements Runnable { public void run() { System.out.println("Le thread fonctionne : " + Thread.currentThread().getName()); } } public class Main { public static void main(String[] args) { MyThread t1 = new MyThread(); t1.start(); Thread t2 = new Thread(new MyRunnable()); t2.start(); } } ``` Les deux options donnent le même résultat. Mais j'ai entendu dire que implements