Java Klassen - Konstruktor abbrechen und mit code fortfahren?

4 Antworten

Nur weil du eine Ausnahme wirfst, erhältst du doch keine roten Fehlermeldungen. Die Ausnahmen kannst du doch sehr komfortabel abfangen!

Du kannst einfach eine eigene Ausnahmenklasse von RuntimeException oder Throwable ableiten, und dann zum Beispiel eine "RegExpandSzException" werfen, die du dort abfängst, wo deine Objekte erzeugt werden.

Natürlich wäre ein Redesign hier angebrachter, aber du hast ja selbst gesagt, dass du es nur so und nicht anders machen willst.

Also: Eigene ExceptionKlasse beuen, werfen, abfangen, und glücklich sein. Sehr einfach! Und völlig ohne rote Fehlermeldungen! :)

Du kannst mit "return" den Konstruktor "beenden".

Alternativ kannst du auch einfach mit nem IF überprüfen ob der Schlüssel existiert und falls nicht dann halt den Teil nicht ausführen..

Woher ich das weiß:Studium / Ausbildung – Informatikstudium

Ich habe mir die Frage gerade selbst beantwortet (wie fast immer wenn man nach stundenlangem Kopfzerbrechen im Internet fragt ^^)

Ich habe den Aufruf vom Konstruktor in eine try/catch Anweisung gelegt und zack ... gelöst!

try{
  TolleKlasse obj = new TolleKlasse("Tolle Argumente");
}
catch(RuntimeException e){}

Scriptim  04.11.2017, 20:41

siehe Antwort von triopasi

0
Scriptim  04.11.2017, 16:17

Es funktioniert zwar, das ist aber kein schöner Code-Stil...

1
Heideltraut1234 
Beitragsersteller
 04.11.2017, 19:56
@Scriptim

@Scriptim

Das hab ich mir schon fast gedacht, ich bin für Vorschläge offen ;)

0
TeeTier  04.11.2017, 15:11

So ziemlich genau das, was ich vor weniger als einer Minute in meiner Antwort geschrieben habe. :)

Aber schön, dass du jetzt eine brauchbare Lösung hast! :)

0