denn das ELSE würde ich weglassen und Interhited immer ausgeführt werden sollte.
Das darf es aber nicht! Zumindest nicht immer. Die Implementierung von
TPersistent.Assign leitet nämlich zu
Source.AssignTo und das ist in der Regel nicht gewollt, sondern eher schädlich, wenn die aktuelle Klasse die Zuweisung im
Assign selbst vornimmt.
Im
Assign das
inherited aufzurufen darf also nur dann passieren, wenn nicht direkt von
TPersistent abgeleitet wurde und eine dazwischen liegende Klasse den Aufruf von
TPersistent.Assign verhindert.