Hier noch ein Beispiel,
dass der gemeinsame Speicherbereich nicht für obj1 u. obj2 freigegeben ist:
Freigegeben heißt ja nicht, daß da zwingend was anderes drin steht als vorher. Man darf das halt nur nicht voraussetzen. Mach mal zwischen dem FreeAndNil und dem Zugriff auf obj2.n noch ein paar Create und Free. Irgendwann wird es nicht mehr 11 zurückgeben.
ClassName ist als class function wieder etwas anderes, da es nicht von einer Objekt-Instanz abhängig ist. Man kann ja auch TestKlasse.ClassName aufrufen.