Wie mache ich einen Override in Java?

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Stell dir vor du hast eine Methode: (Ohne static!)

Bild zum Beitrag

Da diese public ist, kannst du sie ja auch in anderen Klassen benutzen. Dort kannst du dann mit @Override (Wichtig: Genau so schreiben) ändern. Dies geht aber nur, wenn du diese Methode vorher vererbst (... extends...):

Bild zum Beitrag

Noch zu beachten ist: Der Rückgabewert, sowie die Parameter müssen die gleichen sein.

Woher ich das weiß:eigene Erfahrung
 - (Computer, PC, programmieren)  - (Computer, PC, programmieren)

KingzzQuest 
Beitragsersteller
 28.06.2020, 21:08

Okay vielen Dank für deine Hilfe

Also...

... static Methoden kann man nicht "überschreiben"

... nicht-static Methoden sind überschreibbar, wenn

... sie die gleichen Parameter haben
... der Rückgabewert derselbe oder ein Untertyp ist

Du kannst also keine Methode, die einen String als Rückgabewert hat, mit einer Methode des gleichen Namens überschreiben, wenn die andere Methode ein "int" zurückgibt.


KingzzQuest 
Beitragsersteller
 28.06.2020, 21:09

Vielen Dank für die Hilfe

Wenn sie den gleichen Namen und die gleiche Parameterliste haben, kannst du nicht mehrere Methoden mit unterschiedlichem Rückgabewert deklarieren

Sofern sie unterschiedliche Parameter erlauben, sollte das wiederum möglich sein.

Namen von Methoden sollten am Besten auch direkt zeigen, was sie machen - also schreib doch stattdessen einfach getString und getInt - sofern es denn Sinn ergibt


KingzzQuest 
Beitragsersteller
 28.06.2020, 21:08

Okay danke für deine Hilfe