Wenn in einer Java-Anwendung ein Fehler auftritt, sollte eine Exception – eine Ausnahme – geworfen werden. Der Name sagt schon, dass dadurch ein Ausnahmefall markiert werden soll – in der Theorie. In der Praxis werden Exceptions immer wieder missbraucht und falsch eingesetzt. Außerdem gibt es da checked und unchecked Exceptions und der Unterschied zwischen den beiden ist auch vielen Programmierern nicht klar. Der Vortrag geht kurz auf die Funktionsweise von Exceptions ein, um sich dann mit dem Unterschied zwischen checked und unchecked Exceptions zu beschäftigen. Anschließend werden einige wichtige Best Practices und Architekturvorschläge für die Arbeit mit Ausnahmen vorgestellt.