Exception vor catch Block definieren

byron1778

Aktives Mitglied
Hallo Forum!

Ich hätte eine Frage:

Allgemein wird ja ein Objekt der Exceptions im catch Block übergeben!
In dieser Form:

Code:
catch ( MessagingException mex ) {
            mex.printStackTrace();
}
Ich würde jedoch gerne das Object gerne bereits vorher instanzieren.

Sprich so:

Code:
MessagingException mex = new MessagingException();

Das funktioniert auch soweit, jedoch kann das Object jetzt nicht in den catch Block geben, der Compiler meldet dann stets:

identifier expected

Wie müsste ich es genau schreiben, damit es hinhaut?

Danke Euch vielmals für jede Hilfe!

mfG
 

HoaX

Top Contributor
Du hast vor eine Exception selbst zu schmeißen? "throw" ist dein Freund, z.B.
Java:
throw new Exception("Mein Fehler");

Ansonsten versteh ich nicht was du vorhast, deine Beschreibung lässt sehr viel Interpretationsfreiraum.
 

Ebenius

Top Contributor
Es geht so gar nicht. Die Exception muss innerhalb des try-Blocks (oder einer innerhalb des try-Blocks aufgerufenen Methode) erzeugt werden und geworfen werden. Der catch-Block fängt sie dann auf.

Ebenius
 
S

SlaterB

Gast
Die Exception muss innerhalb des try-Blocks (oder einer innerhalb des try-Blocks aufgerufenen Methode) erzeugt werden
exakt so muss es aber auch nicht sein ;)

Java:
public class Test {
    public static void main(String[] args)  {
        MessagingException mex = new MessagingException();
        try  {
            if (true)  {
                throw mex;
            }
        }  catch (MessagingException m)  {
            System.out.println("gleich? " + (m == mex));
        }
    }
}

class MessagingException  extends Exception {}
 

KrokoDiehl

Top Contributor
Oder meinst du sowas?
Java:
MessagingException mex = new MessagingException();
try
{
    ...
    throw mex;
}
catch (MessagingException exc)
{
    // hier ist exc == mex
}
...wobei ich den Sinn nicht verstehe :p

Aber Vorsicht beim instanziieren von Ausnahmen. Sie holen sich nämlich gleich den Stacktrace und wenn du sie dann ausgibst, wird als letzte Zeile genannt, wo du sieh erzeugt hast und nicht wo sie tatsächlich geworfen wurde. Im obigen Beispiel also Zeile 1 anstelle von Zeile 5. Ich glaube das ist nicht hilfreich.

*edit*
Naja, zwei Dumme... ;)
 

byron1778

Aktives Mitglied
Mir ging es im Grossen und Ganzen nur darum das Objekt bereits vorher zu instanzieren!
Da ich gerade dabei bin es zu lernen, wollte ich mal verschiedenes durchtesten.
Oftmals sieht man ja solche Konstrukte, wie gerade eben:

Code:
catch (MessagingException m)  {
...
}

Ich wollte das Ganze nun umgehen, indem ich es bereits vorher instanziere!
Aber auch wenn ich es mit einem throw Block dann löse, will er am Ende noch immer einen catch Block und dort geht letzten Endes nur ein
Code:
catch ( MessagingException m )
.

Würde es gerne so umgeschrieben haben:

Code:
catch ( m ) { ... }

wenn dies überhaupt möglich ist?

Ich wollte, wie gesagt, dass ganze umgehen, indem ich bereits im vorhinein alles instanziere, aber das scheint wohl bei den Exceptions nicht zu gehen oder irre ich mich da?
Das Object habe ich richtig instanziert, also im richtigen Block mit new erzeugt!
 

Ebenius

Top Contributor
Stell Dir einen catch-Block wie eine Methode mit genau einem Parameter der von Throwable erben muss vor. Bei einer Methode muss ja auch der Typ jedes Arguments im Kopf angegeben sein.

Ebenius
 

byron1778

Aktives Mitglied
Das bedeutet dann soviel wie, dass man den catch Block nicht umschreiben kann, sondern mit
Code:
catch (MessagingException mex) {
ausschreiben muss, wenn ich das mit der "Paramterübergabe" richtig verstanden habe!?!?

Weil die Typen im Methodenkopf bereits angegeben werden müssen!

Ok, das erklärt mir dann alles!

Nur noch eine letzte Frage, gibt es auch einen Namen für diese Notation in Java?
Wenn man also Sachen in folgender Sache schreibt:

Code:
BufferedReader in = new BufferedReader(new FileReader("E:\\...."));

bzw. das oben von mir genannte Bsp!

Alles rein interessehalber, um mehr darüber in Erfahrung zu bringen!

Danke Euch vielmals für die Hilfe und die etwas von mir "dumme" Frage!
 
Zuletzt bearbeitet:

Ebenius

Top Contributor
Laut JLS ist das die Initialisierung einer Variablen:
Java:
int variable = 0; // initialization
… und das die Zuweisung:
Java:
int variable;
variable = 0; // assignment
Ebenius
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Exception->mehrere Exceptions in einem Catch Block behand Java Basics - Anfänger-Themen 4
H Try Catch Throw Exception Java Basics - Anfänger-Themen 1
I Exception try-catch Java Basics - Anfänger-Themen 1
J Methoden try / catch exception Java Basics - Anfänger-Themen 5
M exception catch falsch? Java Basics - Anfänger-Themen 11
S catch Exception erklären Java Basics - Anfänger-Themen 2
B try & catch Problem mit Exception bzw String.split() Java Basics - Anfänger-Themen 5
B catch exception funktioniert nicht! Java Basics - Anfänger-Themen 14
F eigene Exception aus try-catch werfen Java Basics - Anfänger-Themen 10
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
Fiedelbambu Exception in Application constructor Java Basics - Anfänger-Themen 3
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
LiFunk Exception: es dürfen nur Nummern eingelesen werden Java Basics - Anfänger-Themen 6
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
1 Exception Java Basics - Anfänger-Themen 2
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
I JAX-RS Exception Handling Java Basics - Anfänger-Themen 4
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
J null exception Array Java Basics - Anfänger-Themen 5
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
C Exception-Frage Java Basics - Anfänger-Themen 3
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
I Exception bei Button mit wait() und notifyAll() Java Basics - Anfänger-Themen 3
N Wie teste ich eine geworfene Exception? Java Basics - Anfänger-Themen 8
R Methoden ArrayList clonen wirft exception Java Basics - Anfänger-Themen 3
D Scanner- Exception NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception werfen bei falscher Datumseingabe Java Basics - Anfänger-Themen 14
A Exception handeling mit finally und objektreferenzen Java Basics - Anfänger-Themen 6
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4
S Exception Java Basics - Anfänger-Themen 2
J Exception-Aufgabe Java Basics - Anfänger-Themen 8
S Verwenden von throw Exception an der Funktion Java Basics - Anfänger-Themen 2
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
Z Fragen zu Exception (Throws/throw) Java Basics - Anfänger-Themen 7
OSchriever Exception für Abbrechen-Schaltfläche JOptionpane Java Basics - Anfänger-Themen 9
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
J Exception unreachable Java Basics - Anfänger-Themen 12
O unchecked Exception Java Basics - Anfänger-Themen 4
P Exception werfen Java Basics - Anfänger-Themen 15
B EJB und Arquillian - bekomme Nullpointer Exception beim Aufruf der EJB Klasse Java Basics - Anfänger-Themen 40
S Exception bei Verwendung von LocalDate Java Basics - Anfänger-Themen 19
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
D Warum die Nullpointer Exception Java Basics - Anfänger-Themen 6
O Exception behandlung einfach Ueben mit Fakt! Java Basics - Anfänger-Themen 10
I OOP Was ist die "Exception Hierarchie" ? Java Basics - Anfänger-Themen 3
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
G Exception und Ausgabe der Duplikate Java Basics - Anfänger-Themen 6
W Exception in Main abfangen oder in der Methode? Java Basics - Anfänger-Themen 10
F Referenz an ein Objekt in einer anderen Klasse erstellen(Nullpointer exception) Java Basics - Anfänger-Themen 6
Mosquera Exception Java Basics - Anfänger-Themen 5
M rekursive division/0 mit exception Java Basics - Anfänger-Themen 18
N Nullpointer exception Java Basics - Anfänger-Themen 4
L Eigene Exception schreiben bei zu langem Array Java Basics - Anfänger-Themen 10
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
I equals (Override) mit eigener Exception (keine Runtime-Exception) Java Basics - Anfänger-Themen 9
S Array Grenzen-Exception Java Basics - Anfänger-Themen 11
E InputStream im Servlet wirft Exception Java Basics - Anfänger-Themen 5
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
G Arrays out of Bounds exception Java Basics - Anfänger-Themen 2
H Compiler-Fehler Out of Bunce Exception bei einem Char Java Basics - Anfänger-Themen 6
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
C Null Pointer Exception Java Basics - Anfänger-Themen 10
F Klassen Eigene Exception Bedingungen festlegen Java Basics - Anfänger-Themen 2
G Null Pointer Exception Java Basics - Anfänger-Themen 4
GreenTeaYT Exception und zur OOP fragen? Java Basics - Anfänger-Themen 3
O Exception bei Parse-Vorgang Java Basics - Anfänger-Themen 17
T Exception Problem Java Basics - Anfänger-Themen 5
Z Getter/Setter NullPointer Exception Java Basics - Anfänger-Themen 6
W Nullpointer Exception bei .add(...) Java Basics - Anfänger-Themen 6
L Input/Output InputMismatch.Exception Java Basics - Anfänger-Themen 7
B Exception Liste von Liste Java Basics - Anfänger-Themen 3
D Throw Exception Java Basics - Anfänger-Themen 2
MiMa JavaDoc Exception @throws schlagen an Java Basics - Anfänger-Themen 4
J Exception in thread "main" Java Basics - Anfänger-Themen 1
B Exception richtig einbinden Java Basics - Anfänger-Themen 1
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
M Selbstdefinierte Exception Java Basics - Anfänger-Themen 5
B Exception Throwable Java Basics - Anfänger-Themen 11
M Erste Schritte Start Methode - Exception Java Basics - Anfänger-Themen 1
F Operatoren Wieso fliegt hier eine NullPointer Exception :( Java Basics - Anfänger-Themen 3
F nullpointer exception - arrayerstellung Java Basics - Anfänger-Themen 4
K Iterator-Interface implementieren mit Exception Handlung Java Basics - Anfänger-Themen 1
H Erste Schritte Exception: 0 Java Basics - Anfänger-Themen 2
A Exception vs. Testklasse (Programm testen) Java Basics - Anfänger-Themen 2
L Fehler: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
K Exception nur im "Debug"-Modus und jedem 3.-5. mal Ausführen Java Basics - Anfänger-Themen 3
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben