Here's another one I didn't get from the Meyer mock:
class sup {
void method() throws Exception { }
}
class
test extends sup {
public static void main(
String[] args) { //1
sup s = new test();
s.method();
}
void method() {} // 2
}
What can be done to avoid compiler error?
---------------
a. Add a "throws Exception" clause at line 1 <---- first correct answ.
b. Add a "throws Exception" clause at line 2
c. Use a try catch block when calling s.method(). <--- second correct answ.
d. There is no compile error. <--- my answer
e. None of the above.
----------------
As I recall, override rules say that you can use the same, fewer, or
sub-types of exceptions from the overridden method in the overriding
method. The overriding version states no exceptions, which is valid.
But the compiler still requires that an exception be handled or declared.
Why?