Wozu glaubst Du, solche Konstrukte zu brauchen? Oder anders gefragt: Was ist Dein eigentliches Problem?
Also folgendes: Meine Basisklasse hat eine Methode "clone()", die eine Kopie der aufrufenden Instanz erzeugt. Meine abgeleitete Klasse ergänzt einige Funktionalitäten. Wenn ich nun "clone()" von einer Instanz der abgeleiteten Klasse aufrufe erhalte ich eine Instanz der Basisklasse, aber ich würde gerne die Methoden der speziellen Klasse verwendbar machen.