Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#17

AW: Versuche Objektorientierung zu lernen

  Alt 19. Feb 2012, 00:30
Nicht Schaden?
Das inherited hat einen ganz bestimmten Grund, denn damit wird gesagt "führe die Methode des Vorfahren aus".

Wenn man etwas überschreibt, dann hat das meistens einen Grund.
Oftmals möchte man zusäztliche Dinge machen, wobei das "zusätzlich" bedeutet, daß man das Alte auch haben will.
Im Falle des Constructors, möchte man natürlich, daß die Teile der Vorfahren ebenfalls ordentlich initialisiert werden.

PS: Es kann nicht schaden, wenn man das Inherited schreibt, auch wenn es keinen Vorfahren gibt ... dann läßt es der Compiler einfach weg.
Es schadet aber oftmals, wenn man es vergißt, wenn es nötig wäre.

Tipp: leite dir mal ein TMemo ab, überschreib den Constructor und vergiß das Inherited.
Jetzt will ich mal sehn, wie du dich fragst "Wo ist mein Memo, ich seh ja garnichts?" und beim ersten Zugriff auf .Lines hoff' ich, du freust dich über die Exception.

Ja, bei TObject fällt es nicht auf, da dort aktuell nur ein leerer Constructor vorhanden ist, aber wer weiß, ob da in Zukunft nicht doch mal irgendwas darin ist.
$2B or not $2B

Geändert von himitsu (19. Feb 2012 um 00:34 Uhr)
  Mit Zitat antworten Zitat