自定义的 异常类 , 可能存在 继承结构 ,
也就是说 在 同一个 try-catch 代码块中 , 如果需要 拦截 和 处理多个 异常时 ,
如果 这些异常都继承相同的父类 , 只需要拦截一个 父类异常即可...,
本篇博客中 , 讨论 抛出 / 捕获 的 异常类 存在 继承结构 的情况 ;
一、抛出 / 捕获 多个类型异常对象
1、抛出 / 捕获 多个类型异常对象
定义一个函数 , 传入一个 int 类型的参数..., 都要手动编写多个 catch 分支 , 每个 catch 分支都要进行各自的操作 ;
如果要在多个位置 , 拦截处理异常 , 则需要编写的代码就太多了 ; 后期维护起来很复杂 ;
3、完整代码示例...二、异常类的继承层次结构
1、抛出子类异常对象 / 捕获并处理 父类异常对象
如果 抛出 / 捕获 多个类型的异常对象 , 每次拦截处理异常时 , 都要手动编写多个 catch 分支 , 不利于代码维护..., 会发生多态 ;
在拦截父类对象时 , 调用不同的 异常对象 , 会分别调用不同子类的 虚函数方法 ;
抛出异常的函数如下 , 抛出异常时 , 需要抛出子类异常对象 ;
// 1.