异常捕捉时的匹配与异常遇到继承

异常捕捉时的匹配

  catch怎么匹配异常的

  Is-A的关系

  就是说,抛出子类异常会被捕捉父类异常catch给捉到

  捕捉任何异常

  

   运行时刻异常

  像ArrayIndexOutOfBoundsException这样的异常是不需要声明的

  但是如果没有适当的机制来捕捉,就会最终导致程序终止

异常遇到继承

  异常声明

  如果你的函数可能抛出异常,就必须在函数头部加以声明

  

  你可以声明并不会真的抛出的异常

  如果你调用一个声明会抛出异常的函数,那么你必须:

  把函数的调用放在try块中,并设置catch来捕捉所有可能抛出的异常;

  或声明自己会抛出无法处理的异常

  异常声明遇到继承关系

  当覆盖一个函数的时候,子类不能声明抛出比父类的版本更多的异常

  在子类的构造函数中,必须声明父类可能抛出的全部异常

posted @ 2022-06-24 13:43  zj勇敢飞,xx永相随  阅读(29)  评论(0编辑  收藏  举报