异常处理

Java编译器要求程序必须捕获或者声明所有的非运行时异常,但对运行时异常可以不做处理。

Runtime异常(运行时异常):无须处理。原因:编程错误。【除数为零、空字符串、无效句柄】javac无法通过编译时的静态语法检测异常,完全取决于运行时状态。

Checked异常:可在编译阶段被处理的异常,强制程序处理它。仅java语言提供:严谨、健壮但也降低生产率和代码执行效率。

当前方法知道如何处理该异常——try catch,不知道——定义该方法时声明抛出该异常throws。

自行抛出异常throw语句可单独使用,抛出异常实例,只能抛一个。throw new Exception();throw抛出的为Checked异常时,需要(1)try块里(2)带throws声明抛出的方法里。

抛出异常try {} 捕获异常catch() {} 花括号不可省略 finally {} 必定会执行(除system.exit(1)),用于回收资源:数据库连接jdbc、网络连接Connt、磁盘文件IO。Java7重写资源类使其实现AutoCloseable或Closeable接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值