Which exception to use here?
What would be a good (runtime-)exception class from the
standard library meaning ?For reasons I do not understand,
a called submethod failed, and now I can't do my job.?
For example, method ?m? calls ?div?, and ?div? might throw
a checked exception named ?DivisionByZero?.
The client of ?m? does not even know at all that ?m? does a
division, so he should not get this exception, it would make
no sense to him. Therefore, one would like to repack it into
a (runttime-)exception that is intended to /make/ sense for
m's client, but one also believes that this exception will
never be thrown in the first place (and if it happens:
indicate a programmer error, not a runtime failure in the
sense of a harddisk device failure or so). So:
What would be a good class to use instead of
?WhatToUseHereException? below?
public void m()
{ ...
if( y != 0 )
{ try
{ q = div( x, y ); }
catch( final DivisionByZero divisionByZero )
{ throw new WhatToUseHereException( divisionByZero ); }}
... }
I believe, a runtime exception is more appropriate here than
a checked exception, but do not know which specific runtime
exception is best.
And is it better to try to use exception classes from Java SE
whenever possible when throwing new exceptions or to declare
additional exception classes for the code being written?