Zumindest der dritte Aufruf sollte ja außerhalb der Unit2 nicht funktionieren, da die Methode ja "protected" ist
!
Du hast es ja offenbar selbst schob erkannt: Da der protected constructor nicht sichtbar ist, wir stattdessen der von TObject genommen. Das müsste im Debugger auch auffallen.