小伙伴们对Java的异常应该是不陌生的,不过很多人只是简单的应用而已,而没有全面的,整体的去了解Java的异常体系。今天老顾就来跟大家一起学习JAVA的异常。
创新互联是一家集网站建设,台江企业网站建设,台江品牌网站建设,网站定制,台江网站建设报价,网络营销,网络优化,台江网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
3W原则
哪都有的3W原则,JAVA异常也可以总结3W:what、where、why
异常体系
上图我们看出Throwable是异常的***类,Error和Exception是他的子类。
Exception又分RuntimeException和非RuntimeException子类。
Error与Exception区别
我们看一下他们的概念定义:
(1) Error:程序无法处理的系统错误,编译器不做检查。
(2) Exception:程序可以处理的异常,捕获后可处理。
RuntimeException与否区别
上图中Exception有两种类型的异常,我们来看一下。
(1) RuntimeException:不可预知的,程序应当自行避免
(2) 非RuntimeException:可预知的,编译器可检查的异常
责任归属
我们从责任角度看:
上面代码直观一点:
们看到Error和RuntimeException编译器是不检查的,而CheckedExcepton异常编译器是检查的,也就是我们程序员是必须要捕获处理的。那怎么处理呢?
(1) try-catch方式
用try-catch方式捕获这个异常,可以在catch代码段进行异常逻辑处理,这个就按照实际业务而定。如上图代码是FileNotFound异常,根据这个类型我们就知道是文件句柄不存在,那我们应该做哪些处理。如:提示一下用户该文件不存在
(2) 上抛异常方式
在复杂的业务中,我们的程序员自己写的模块,很有可能被其他程序员写的模块进行引用,为了能够让其他程序员知道我们模块的异常,并要他们要进行处理,我们就可以采用上抛异常方式
我们看一下上层调用的处理
我们看到上抛异常,是需要调用方进行处理的。那处理的方式是什么呢?其实就是上面讲的try-catch或继续上抛。
常见的Error和Exception
(1) RuntimeException
(2) 非RuntimeException
(3) Error
总结
今天老顾介绍了异常的相关知识,这点在我们系统开发时是非常重要的,尤其在我们设计系统时,要定义我们系统自己的异常,这个需要整体规划异常类型、异常Code、异常信息等,能够起到很好的排查问题,并方便捕获处理。
分享名称:阿里面试:关于Java的异常,你能说多少?
本文地址:http://www.shufengxianlan.com/qtweb/news27/249777.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联