1已经封装的异常,分为非runtime与runtime异常,前者如果有方法抛出异常那么方法上必须声明异常,调用者必须处理,要不throws要不try catch,后者方法内的抛出是不用声明的,声明一个异常导致问题会被隐藏,你如果处理了程序还会运行,不符合开发健壮性的原则。
2对于没有描述的异常可以自己定义,只要继承exception或者runtimeexception就可以,两者区别就是一个可以抛出异常让用户处理问题,一个只要在运行中有问题那么程序立刻停止。
对于异常机制来说,很好的将数据逻辑进行中的代码与控制代码分开,更好的阅读性,健壮性。 |
|