First page Back Continue Last page Summary Text
Notes:
The first issue I want to address is the nature of exceptions in Java. In Java there are both "checked" and "unchecked" exceptions.
The class hierarchy is:
Throwable
Error // serious problems that a reasonable application should not try to catch
...
Exception // conditions that a reasonable application might want to catch
RuntimeException // thrown during the normal operation of the JVM
...
Classes derived from Error or RuntimeException are unchecked, others are checked.
Note that many "exceptions that can be thrown during the normal operation of the JVM" are also "conditions that a reasonable application might want to catch".
These are handled differently by the compiler.
Do developers need to handle them differently?