Fail Safe Error Handling in Java via Exceptions
"What could possibly
go wrong?" ... The usual answer from a cynic is "anything, and usually at the most inconvenient time, and in the most unexpected way!". So checking for routine errors in your program code is a good start, but it doesn't go far enough; you need to be able to handle errors which are not routine, and are not anticipated - and that's where the "exception" system comes in.
Exceptions work like this ... you put the section of code that you want to "mop up" any problems from in a try
block, and you then provide one or more catch
blocks as safety nets - they'll be run only if a certain class of exception is thrown. Multiple safety nets (i.e catch blocks) allow you to trap very specific and narrowly defined issues first, then have further more general nets available if the first ones don't work.
On most exception systems (including Java, who's terminology I've been using so far) you also have the ability to define a clean up block that is always run - a finally
block - irrespective of whether or not an excpetion you've caught has cause the code to exit prematurely rather than carry on below (fall through).
There's an example showing the code that relates to each of these concepts [here]
from yesterday's Java Bootcamp
. It goes little further in that it also illustrates how a method can pass back an exception to the code that called it (rather like a chid asking its mother for help!), and it even defines its own special class of exception, showing how the mechanism can be used to pick up run time problems in your code, as well as in the standard library calls that you make. The source of the extra class that defines your own exception is [here] (written 2010-07-09)
Associated topics are indexed underJ712 - Java - Exceptions 
String handling - from first steps to practical examples - (2010-11-13) 
After Course Resources - do we publish sample answers. Example from Java Exceptions module. - (2010-11-13) 
Handling unusual and error conditions - exceptions - (2010-02-03) 
Exceptions in Java - why and how - (2009-09-24) 
What are exceptions - Python based answer - (2008-11-08) 
Final, Finally and Finalize - three special words in Java - (2007-02-05)
Some other Articles
Ruby - how does it compare and where is it the right language?Relationships between Java classes - inheritance, packaging and othersChanging with weather and seasonsWriting a server in Java Fail Safe Error Handling in Java via ExceptionsMySQL and Java - connectivity past, present, and future thoughtsWhat methods are available on this Java object?Using java, javac, jar, and CLASSPATH - a simple exampleThe healthy option - away from the private carPark and Ride at Batheaston - will it solve Wiltshires Ills?
4088 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).