W3docs

java

Welche der folgenden Methoden ist eine korrekte Art, einen Thread in Java zu erstellen?

Übe dein Wissen

Welche der folgenden Methoden ist eine korrekte Art, einen Thread in Java zu erstellen?

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