异常覆盖中的细节:
1,子类在覆盖父类时,如果父类中被覆盖的方法抛出了异常,那么子类覆盖的方法,只能抛出相同的异常,或则该异常的子类。
2,如果父类的被覆盖方法抛出了多个异常,子类在覆盖时,只能抛出这些异常的子集。
3,如果被覆盖的方法没有抛出异常,子类也不允许抛出异常。如果子类真的出现异常,只能在子类方法内进行try处理,绝对不允许throws声明。
万一处理不了呢? 你可以选择抛出运行时异常。(必要掌握)
异常的注意事项:
在子父类覆盖时:
1.子类抛出的异常必须是父类的异常的子类或者子集。
2.如果父类或者接口没有异常抛出时,子类覆盖出现异常,只能try不能抛。
|