什么是异常?
按照字面的意思就是不正常,翻译成代码层面的意思是,由于程序员不理解某段代码真正的用法,没有正确使用该代码,或者对业务逻辑的思考不全面,导致个别程序缺陷,从而出现异常。
异常对于代码来说,是正常的,没有人能写出完全没有Bug的代码来,就像世界上没有不生病的人,所以,出现了异常,我们要去处理它,不可任由它发展,并且一些比较明显、不应该犯的异常,我们在遇到过之后,必须牢牢记住,防止以后再犯类似的错误。
不处理异常的后果
有的同学会说,产生了异常,我不去处理它行不行,对我的程序有没有什么影响。有这种想法的同学,大部分都是嫌弃处理异常很麻烦,不愿多花篇幅去处理异常,觉得没必要。
那我就问一下,假如你病了不去治行不行哦?
你肯定不用想就会说,不行!!!我的命很金贵。哈哈对,人都应该珍惜自己。但我也常常想起一段话,就是:
人应该对代码怀有敬畏之心。
如果你不敬畏代码,代码就会错乱,如果是你自己的测试代码什么的当然没事,错了就错了。但想想,假如你的项目被几百万个人用着,产生了一个异常导致整个系统不能用,你会有什么后果?用屁股想也知道,收拾包袱走人了吧?
这是从实际生产中来讨论的后果,在代码层面来说,有两种类型的异常,一种是error,一种是exception。顾名思义,error就是错误,就是不应该发生的事情。exception就是异常,异常就是不正常,这种不正常我们应该去处理它,从而保持整个程序的正确运行。
异常不处理的后果就是,运气好的话,只是最后的结果不正确,但你可能发现不了,这种情况下你就被程序骗了,毕竟你都不知道有这么个异常。最坏的结果是程序崩溃,强制停止运行。
捕获异常
捕获异常的意思就是对产生异常进行处理,从而使程序往正确的方向发展。捕获异常的语法如下: