Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Abstrakte Klasse vs Schnittstelle | Schnittstelle
Java OOP
course content

Kursinhalt

Java OOP

Java OOP

1. Wie Arbeitet Man mit Einer IDE?
2. Oop
3. Schnittstelle

book
Abstrakte Klasse vs Schnittstelle

Welche Option wählen?

Aus den vorherigen Kapiteln ist Ihnen möglicherweise aufgefallen, dass abstract classes und interfaces ziemlich ähnlich sind. Es gibt jedoch Unterschiede zwischen ihnen. Kurz gesagt, kann man sagen, dass in der Praxis interfaces oft bevorzugt werden gegenüber abstract classes.

Was ist der Unterschied?

  • Syntax: abstract class bei der Deklaration einer abstract class und interface bei der Deklaration eines interface;
  • Vererbungsschlüsselwort: extends für die Vererbung einer abstract class, und implements für die Vererbung eines interface;
  • Bezeichnungen für Unterklassen: Eine Unterklasse einer abstract class wird als subclass oder erbbare Klasse bezeichnet, während eine Unterklasse eines interface als class - implementation bezeichnet wird;
  • Anzahl der Vererbungen: Man kann von nur einer abstract class erben, während man von mehreren interfaces erben kann;
  • Eine abstract class kann sowohl implementierte als auch abstract methods besitzen. Ab Java 8 können interfaces auch default methods haben, die wir später in diesem Abschnitt besprechen werden;
  • Methoden in einer abstract class können jeden Zugriffsmodifikator haben, während in interfaces nur der public Zugriffsmodifikator erlaubt ist.

Hinweis

Wir können auch gleichzeitig von einer abstract class erben und ein interface implementieren. Zuerst verwenden wir das Schlüsselwort extends, und dann implements. Die Syntax sieht wie folgt aus: ``` class ClassName extends AbstractClass implements Interface {

Auf einfache Weise ist eine abstrakte Klasse eine Klasse, die einige Funktionalitäten bereitstellt und bestimmte Regeln durchsetzt, aber lässt einige Teile von ihren Unterklassen vervollständigen. Eine Schnittstelle hingegen ist wie eine Checkliste, die eine Klasse erfüllen muss, wobei sie angibt, welche Methoden sie haben muss, ohne tatsächlichen Code bereitzustellen.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 3
We're sorry to hear that something went wrong. What happened?
some-alt