Kann mir bitte eine/r einen kurzen Crashkurs über Abstrakte Klassen geben
Danke
scorpion91 Gast |
Das Hauptmerkmal einer abstrakten Klasse ist, dass keine Instanzen/Objekte davon erzeugt werden können.
Beispiel:
abstract class Person {
int age;
[...]
public getAge() {
return age;
}
}
Würde ich jetzt versuchen mit
new Person()
die Klasse zu Instanzieren wird schon die IDE meckern, dass das nicht geht. Um jetzt etwas mit dem Ding anfangen zu können muss brauche ich eine Ableitung/Vererbung der Klasse.
class Student extends Person {
int semester;
[....]
public int getSemester() {
return semester;
}
}
Die Klasse Student kann instanziiert werden und würde mir die Methoden getAge() und getSemester() zur Verfügung stellen.
In dem Wiki-Artikel steht, dass abstrakte Klassen mindestens eine Methode enthalten müssen, das ist falsch.
Der Unterschied zwischen Interfaces und Abstrakten Klassen liegt hauptsächlich darin, dass Interfaces wirklich reine Schnittstellen sind und abstrakte Klassen in der Regel als Basis-Implementierung für dessen abgeleitete Klassen dienen.
« Geschwungene Klammern innerhalb der Klasse | [VBA] Funktion mit ByVal? » | ||