java
Welche der folgenden Methoden ist eine korrekte Art, einen Thread in Java zu erstellen?
Übe dein Wissen
Erklärung
Erstellung von Threads in Java durch Implementierung des Runnable-Interfaces oder Erweiterung der Thread-Klasse
Java bietet zwei Hauptmethoden zur Erstellung von Threads: Durch die Implementierung des Runnable-Interfaces und durch die Erweiterung der Thread-Klasse.
Implementierung des Runnable-Interfaces
Die Implementierung des Runnable-Interfaces ist eine gängige Methode zur Erstellung eines Threads in Java. Man erstellt eine Klasse, die das Interface Runnable implementiert und definiert die run Methode. Hier ein Beispiel:
class MeinRunnable implements Runnable {
public void run(){
// code, der vom neuen Thread ausgeführt werden soll
}
}
public class HauptKlasse {
public static void main(String[] args){
MeinRunnable meinRunnable = new MeinRunnable();
Thread thread = new Thread(meinRunnable);
thread.start();
}
}
In diesem Beispiel wird die run Methode definiert, die den Code enthält, der vom neuen Thread ausgeführt werden soll. Mit Thread thread = new Thread(meinRunnable); wird ein Thread-Objekt erstellt und mit thread.start(); wird der Thread gestartet.
Erweiterung der Thread-Klasse
Eine weitere Methode zur Erstellung eines Threads in Java ist die Erweiterung der Thread-Klasse. Man erstellt eine neue Klasse, die von der Thread-Klasse erbt und überschreibt die run-Methode. Hier ist ein Beispiel:
class MeinThread extends Thread {
public void run(){
// Code, der vom neuen Thread ausgeführt werden soll
}
}
public class HauptKlasse {
public static void main(String[] args){
MeinThread thread = new MeinThread();
thread.start();
}
}
In diesem Beispiel wird ein Objekt der Klasse MeinThread erstellt und mit thread.start(); wird der Thread gestartet.
Es ist wichtig zu beachten, dass das Runnable-Interface in der Regel bevorzugt wird, weil es eine größere Flexibilität bietet. Durch das Implementieren des Runnable-Interfaces behält die Klasse die Möglichkeit, von einer anderen Klasse zu erben, während bei der Erweiterung der Thread-Klasse diese Möglichkeit verloren geht, da Java nur einfache Vererbung unterstützt.
Willst du mehr davon? Mach das komplette Java Grundlagen-Quiz.
Quiz Starten