Program logic bugs vs input/environmental errors (checked exceptions)
Sean Kelly via Digitalmars-d
digitalmars-d at puremagic.com
Wed Oct 1 16:00:41 PDT 2014
On Wednesday, 1 October 2014 at 22:42:27 UTC, Jeremy Powers via
Digitalmars-d wrote:
>
> If you see "throws Exception" in java code chances are the code
> is broken,
> same as if you see "catch (Exception" - this tells you nothing
> about the
> exception that happened, and hence you can do nothing with it.
> So you
> either swallow (and silently break in many cases) or rethrow
> (and break for things you needn't have). As mentioned, the
> standard way to avoid this is to have a parent exception type
> appropriate to the abstraction in the API, and throw subtypes
> in the implementation. Among other things, this means you can
> change the implementation to throw different exceptions without
> breaking any users (who will already be catching the parent
> exception).
...while in Phobos, most of the subtyped exceptions were
eliminated a while back in favor of just always throwing
Exception.
More information about the Digitalmars-d
mailing list