En Java : implements Runnable contre extends Thread — que choisir pour créer un thread ?
Bonjour à tous ! J'ai commencé à étudier le multithreading en Java et je suis confus entre deux approches pour créer des threads. Partout, on écrit qu'on peut soit étendre la classe Thread, soit implémenter l'interface Runnable. Mais quand utiliser quoi ?
Voici des exemples que j'ai essayés :
1) extends Thread :
```java
class MyThread extends Thread {
public void run() {
System.out.println("Le thread fonctionne");
}
}
public class Main {
public static void main(String[] args) {
MyThread t = new MyThread();
t.start();
}
}
```
2) implements Runnable :
```java
class MyRunnable implements Runnable {
public void run() {
System.out.println("Le thread fonctionne");
}
}
public class Main {
public static void main(String[] args) {
MyRunnable task = new MyRunnable();
Thread t = new Thread(task);
t.start();
}
}
```
Les deux options fonctionnent — je l'ai vérifié. Mais quelle est la différence ? Pourquoi dans les tutoriels recommande-t-on d'utiliser Runnable ? Et peut-on...
No answers yet.
Connectez-vous pour laisser une réponse