我在学习的时候,也觉得异常有些难理解,后来经过分析我认为可能有这样的原因:
一般来说,实际情况中都是开发的人在做一些功能时,标识了异常,调用者调用了这些功能后进行相应处理,而我们在学习过程中都是自己写功能,自己标识异常,自己又解决异常,就有点懵了。
异常分两种:编译时被检测的异常和编译时不被检测的异常(运行时异常:RuntimeException)
Exception中有一个特殊的子类,RuntimeException,运行时异常,如果在函数内抛出该异常对象,函数上可以不用声明,如果在函数上声明该异常,调用者可以不进行处理,编译一样能通过。
之所以不用在函数上声明,是因为不需要让调用者处理,在运行时,当该异常发生,就无法在进行运算,希望程序停止后对代码进行修正。
如果自定义的异常发生时程序无法再运行的话,就让自定义的异常继承RuntimeException.
希望多交流! |