Hallo,
Kann man überhaupt in einem Konstruktor darauf Einfluss nehmen, ob ein Objekt oder "ein Fehlercode" zurückgegeben wird, oder wird _immer_ ein Objekt zurückgegeben
Die Begrenzung auf Objects macht es wenig sinnvoll, auf diese Weise mit dem aufrufenden Programmteil zu kommunizieren. Angenommen, man gibt ein Boolean-Objekt zurück, so kann man zwar if (instanz == false) prüfen. Wenn man das aber lässt, was wahrscheinlich ist, wenn man schon den Konstruktor falsch aufruft, dann bringt das eher wenig. Man wird sich nur wundern, warum das zurückgegebene Objekt nicht die Member hat, die man erwartet.
Ich würde in so einem Falle der Fehlbedienung einfach kurzen Prozess machen:
if (!param) {
throw "Konstuktor myObj wurde fehlerhaft aufgerufen: Der obligatorische Parameter xyz fehlt.";
}
Besser an einer Stelle mit einer hilfreichen Fehlermeldung das Programm beenden, als dass sich später jemand fragt, warum das Objekt keine Eigenschaften und Methoden hat. (Niemand bekommt heraus, dass es ein Boolean-Objekt ist.)
Mathias