异常的学习笔记

异常的思考:
异常:
1.error:        --不希望被程序捕获或者是程序无法处理的错误
内存溢出,栈溢出等等。
2.运行时异常:    --不做处理的话可以正常编译。
代码逻辑有问题,不严谨导致,可以规避。比如空指针异常,数组下标越界,类型转换异常,类找不到 等。
3.非运行时异常:    --不做处理的话编译无法通过。
io异常,sql异常等。


异常的另一种分类:
1.检查异常        --必须处理,不做处理,编译期无法通过。
2.非检查异常    --包括运行期异常和Error

异常的使用给出了以下指导原则: 
- 不要将异常处理用于正常的控制流(设计良好的API不应该强迫它的调用者为了正常的控制流而使用异常) 
- 对可以恢复的情况使用受检异常,对编程错误使用运行时异常 
- 避免不必要的使用受检异常(可以通过一些状态检测手段来避免异常的发生) 
- 优先使用标准的异常 
- 每个方法抛出的异常都要有文档 
- 保持异常的原子性 
- 不要在catch中忽略掉捕获到的异常

自定义异常:
1.自定义异常类--需要继承Exception 重写toString方法
2.在方法中抛出。

参考:https://www.cnblogs.com/Qian123/p/5715402.html
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值