All code in my posts, unless a source is explicitly mentioned, is my own.
Christian Lombardo wrote:When you say "has to enforce the rules so that even in the worst case scenario (when <method> is the one defined in the type of <reference> the restrictions of checked exceptions are observed." The rules as I understand from the K&B book are:
*Overriding method must not throw checked exceptions that are new or broader than those declared by the overridden method.
* Overriding method can throw narrower or fewer exceptions. Just because an overridden method "take risks" does not mean overriding subclass exception takes same risks. Bottom line: an overriding method does not have to declare any exceptions that it will ever throw regardless of what the overridden method declares.
How does these rules in the K&B book coincide with this example and what you are saying? Are there other rules "overriding + check exceptions" I do not know about? If so Could you please explain.
All code in my posts, unless a source is explicitly mentioned, is my own.
scjp6-90%
All code in my posts, unless a source is explicitly mentioned, is my own.
Christian Lombardo wrote:Why does the subtype (in this case Dog2) method need to have an throws Exception in order for the line with a.eat() complie correctly?
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime. |