Avatar ·

Implements und extends in Java: Wann verwenden und was ist der Unterschied?

Hallo zusammen! Ich habe angefangen, Java zu lernen und kann den Unterschied zwischen den Schlüsselwörtern extends und implements nicht verstehen. Anscheinend werden beide für die Vererbung verwendet, aber wann verwendet man was? \n\nIch habe einen kleinen Code geschrieben, aber er kompiliert nicht und ich habe das Gefühl, dass ich die Konzepte verwechsle:\n\n```java\nclass Animal {\n void eat() {\n System.out.println("Isst");\n }\n}\n\ninterface Pet {\n void play();\n}\n\n// Hier bin ich mir unsicher\nclass Dog extends Animal implements Pet {\n // Versuche, die Methode aus dem Interface zu überschreiben\n void play() {\n System.out.println("Spielt mit dem Ball");\n }\n}\n\npublic class Main {\n public static void main(String[] args) {\n Dog dog = new Dog();\n dog.eat();\n dog.play();\n }\n}\n```\n\nFehler: Die Methode play() in Dog überschreibt die Methode nicht