Throwable Exception Error JVM

Werbung
Stunde6-Sote.ink
Throwable
JVM
Exception
Error
VirtualMachineError
AssertionError
OutOfMemoryError
IOException
RunTimeException
FileNotFoundException
ClassCastException
NullpointerException
1
Stunde6-Sote.ink
Merkregeln
- Existierende Fehlerklassen nutzen (Java bringt über 200 verschiedene mit)
- Niemals von Error erben
- Fehler möglichst spezifisch fangen
- Fehler möglichst nahe am Ort des Entstehens behandeln
- niemals leeren catch-Block
- auch in catch-Blöcken können Fehler auftreten
2
Stunde6-Sote.ink
Logging
Mit dem Logger lassen sich Meldungen von Anwendungen beispielsweise in eine
Datei schreiben und stellt damit eine Alternative zu System.out.println dar.
Anwendung
Formatter
"Außenwelt"
z.B. Datei
Handler
Logger
Filter
Filter
- Filehandler
- ConsoleHandler
- SocketHandler
- StreamHandler
- MemoryHandler
3
Stunde6-Sote.ink
Logging
(Bessere) Alternative zu System.out
StreamHandler
FileHandler
SocketHandler
DatabaseHandler
...
- Durchgängige Formatierung
- Durchsuchbarkeit/Auswertbarkeit
- viele Ziele (Dateien, Socket, Datenbank usw.)
- Zur Laufzeit an/ausschaltbar
Formatter
- Verschiedene Log-Levels
XMLFormatter
SimpleFormatter
eigene Formatter (s. nächste Seite)
4
Stunde6-Sote.ink
Eigener Formatter
5
Stunde6-Sote.ink
Reflection und Introspection
Mit Reflection können zur Laufzeit
- Klassen instanziert werden
- Methoden aufgerufen werden
Mit Introspection können die Eigenschaften von Klassen ausgelesen werden
- Methoden: Name, Modifier, ...
- Attribute (getField())
- Annotations
....
6
Stunde6-Sote.ink
Instanzieren
Methoden ausgeben
Methode aufrufen
7
Herunterladen