finally
Posted yaobiluo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了finally相关的知识,希望对你有一定的参考价值。
finally 中的代码一定会执行, 除非在finally之前 JVM退出了
一般用来释放资源,IO流关闭流 DB中关闭数据库的连接
一定会执行,即使return了,也会执行
如果catch里面有return语句,请问finally的代码还会执行吗?如果会,请问是在return前还是return后。
return 会先建立返回盒子,再看finally中是否有需要执行的代码
异常注意事项
* a:子类重写父类方法时,子类的方法必须抛出相同的异常或父类异常的子类。(父亲坏了,儿子不能比父亲更坏)
* b:如果父类抛出了多个异常,子类重写父类时,只能抛出相同的异常或者是他的子集,子类不能抛出父类没有的异常
* c:如果被重写的方法没有异常抛出,那么子类的方法绝对不可以抛出异常,如果子类方法内有异常发生,那么子类只能try,不能throws
* B:如何使用异常处理
* 原则:如果该功能内部可以将问题处理,用try,如果处理不了,交由调用者处理,这是用throws
* 区别:
* 后续程序需要继续运行就try
* 后续程序不需要继续运行就throws
* 如果JDK没有提供对应的异常,需要自定义异常。
以上是关于finally的主要内容,如果未能解决你的问题,请参考以下文章