Exceptions provide an elegant, dynamic means of handling run-time errors and anomalies in a Java program. But how do you determine what kind of conditions call for exception handling? And how do you design your code so that exception handling doesn't actually make your code harder to read? Join Mike Simpson as he guides you on a tour of "Exceptional Design".