Ist es eigentlich angemessen Konstruktoren Exceptions werfen zu lassen?(siehe Beispiel)
Oder sollte man sie besser in Konstruktor abfangen? Eine weitere Frage ist, wenn es sich bei der Methode meineMethode() um ein falsches Argument des Konstruktors handelt,
sollte ich eine IllegalArgumentException schmeißen lassen, oder mir eine eigene Klasse von IllegalArgumentException
ableiten, die ich dann werfe?
Wie sähe das ganze aus wenn ich meineMethode() public mache und sie nicht mehr im Konstruktor aufrufe, sondern der Anwender sie benutzen müsste?
Wäre das eine bessere vorgehensweise? Müsste ich dann an anderen stellen (dort wo der Wert der durch meineMethode() erzeugt wird fehlt z.b. ein spezielles Objekt ist null) eine Exception werfen, die einen Hinweis darauf gibt das meineMethode() wahrscheinlich nicht aufgerufen wurde? Oder sollte man es in diesem Fall auf die NullPointerException ankommen lassen?
Hoffe ihr wisst weiter
Code:
class XY
{
XY(para) throws Exception
{
...
meineMethode();
}
private void meineMethode() throws Exception
{
...
}
}
sollte ich eine IllegalArgumentException schmeißen lassen, oder mir eine eigene Klasse von IllegalArgumentException
ableiten, die ich dann werfe?
Wie sähe das ganze aus wenn ich meineMethode() public mache und sie nicht mehr im Konstruktor aufrufe, sondern der Anwender sie benutzen müsste?
Wäre das eine bessere vorgehensweise? Müsste ich dann an anderen stellen (dort wo der Wert der durch meineMethode() erzeugt wird fehlt z.b. ein spezielles Objekt ist null) eine Exception werfen, die einen Hinweis darauf gibt das meineMethode() wahrscheinlich nicht aufgerufen wurde? Oder sollte man es in diesem Fall auf die NullPointerException ankommen lassen?
Hoffe ihr wisst weiter