Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Durch die Verwendung funktionaler Konstrukte in Verbindung mit strenger Typisierung unterstützt Scala einen Programmierstil, in dem Exceptions und das Exception-Handling an Bedeutung verlieren. Aber wenn Scala mit Java interagiert, sind Exceptions immer noch vorherrschend.
In Scala gibt es keine checked-Exceptions wie in Java, und sogar die checked-Exceptions von Java werden in Scala wie unchecked-Exceptions behandelt. Es gibt auch keine throws-Klausel in den Methodendeklarationen. Allerdings gibt es eine Annotation @throws, die für die Interoperabilität mit Java hilfreich ist. Mehr dazu im „Annotationen“.
Glücklicherweise ist das Exception-Handling in Scala nichts weiter als eine andere Form des Pattern-Matching. Es ermöglicht uns, intelligente Entscheidungen zu treffen, wenn wir mit einer Vielfalt möglicher Exceptions konfrontiert werden. Das wollen wir uns hier im Beispiel ansehen: