devxlogo

Exception Handling, Inheritance and the Need For Strict Rules

Exception Handling, Inheritance and the Need For Strict Rules

Java has some strict rules for exception handling when it comes to inheritance and overriding of methods.
Consider this example:

 class Base                     {    void amethod() { }}class Derv extends Base{    void amethod() throws Exception { } //compile-time error    public static void main( String s[] )    {        Base b = new Derv();   // line 12        b.amethod();           // line 13    }}

size=3>
The above code gives an error when compiled. The reason for this is that when the subclass overrides a method of the super class, the method definition in the subclass can only specify all or a subset of the exception classes in the throws clause of the overridden method in the superclass.
What

devx-admin

Share the Post: