Java OCA
Fragen zu Java OCA
Fragen zu Java OCA
-
- 1 / 22
-
Flashcards
Erkläre FileNotFoundException
Diese Exception wird geworfen, wenn das Program auf eine nicht existierende Datei zugreifen möchte.
Es ist eine Checked Exception: Muss behandelt werden.
Erkläre IOExceptin
Die Exception wir geworfen, wenn das Programm ein Problem mit dem Lesen/Schreiben einer Datei hat
Es ist eine Checked Exception: Muss also behandelt werden.
Welche Exceptions MÜSSEN behandelt werden
Nur die, die von der Klasse Exception erben
Welche Exceptions müssen NICHT behandelt werden
Alle die von der Klasse RuntimeException und von der Klasse Error erben
Welche Exception DÜRFEN vom Program behandelt werden?
Alle Exceptions die von der Klasse Exception und somit implizit auch von der Klasse RuntimeException erben.
Erkäre ArithmeticException
Diese Exception wird beim Versuch durch Null zu dividiren von der JVM geworfe.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Erkläre ArrayIndexOutOfBoundsException.
Diese Exception wird beim Versuch ein Array mit einem nicht gültigen Index zuzugreifen von der JVM geworfen.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Erkläre ClassCastException
Diese Exception wird von der JVM geworfen, wenn versucht wird ein Objekt in einer Unterklasse zu casten, von der es aber nicht eine Instanz ist.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Erkläre die IllegalArgumentException
Diese Exception kann vom Programierer explizit geworfen werden, wenn eine Methode ungültig oder unangemessen Parameter erhöllt.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Erkläre die NullPointerException
Diese Exception wird von der jVM geworfen werden, wenn eine Null-Referenz anstelle ein Object gefunden wird.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Erkläre die NumberFormatException
Diese Exception kann vom Programierer explizit geworfen werden, wenn ein Versuch, einen String in eine Zahl (numeric Type) zu konvertieren, fehlschlägt.
Es ist eine RuntimeException und muss demnach NICHT behandelt werden.
Welche RuntimeException kennst Du
- AritmeticException
- ArrayIndexOutOfBoundsException
- ClassCastExceptin
- IllegalArgumentException
- NullPointerException
- NumberFormatException
Welche CheckedException kennst du?
- FileNotFoundException
- IOException
Welche Errors kennst du?
- ExceptionInInitializerError
- StackOverflowError
- NoClassDefFoundError
Von welchen Klassen erbt RuntimeException
java.lang.Object > java.lang.Throwable > java.lang.Exception > java.lang.RuntimeException
Von welchen Klassen erbt Error
java.lang.Object > java.lang.Throwable > java.lang.Error
Von welchen Klassen erbt Exception
java.lang.Object > java.lang.Throwable > java.lang.Exception
Erkläre die ExceptionInInitalizerError
Dieser Fehler tritt auf, wenn im statischer Initialiesierungsblock ein Fehler auftritt.
Es ist ein Error und kann nicht behandelt werden.
Erkläre den StackOverflowError
Dieser Fehler tritt auf, wenn der Stack zu gross wird. In der Regel, wenn Applikation eine loop in der Rekursion hat also eine endlose Rekursion bzw.eine zu große Rekursionstiefe..
Es ist ein Error und kann nicht behandelt werden.
Erkläre den NoClassDefFoundError
Dieser Fehler tritt auf, wenn bei einer Instanzierung eines neuen Objects mittels new Class() die Definition zu dieser Klasse nicht gefunden wird. Die Definition muss im classpath vorhanden sein.
Es ist ein Error und kann nicht behandelt werden.
Was kenntzeichnet eine checked exception aus, und was ist bei einer checked exception zu beachten?
Checked exception ist die Klase Exception oder Subklassen von Exception (ausser RuntimeException).
Diese müssen immer behandelt werden. Entweder mit einem Try/Catch Block oder mit einer Weiterleitungsdeklaration.
Was ist der Unterschied zwischen:
1) String person = "Kind";
2) String person = new String("Mutter");
Nummer 1 wird bei kompilierzeit erstellt und im Stringpool gespeichert.
Nummer 2 hingegen wird während Runtime instanziert und im Heap gespeichert.
Beide sind schlussendlich aber Referenzvariablen vom Typ String