异常

java异常处理目的在于通过使用少于目前数量的代码来简化大型、可靠的程序的生成。Java中Throwable类是所有异常或错误的超类,它的两个子类Error表示编译时和系统错误,Exception表示可以被抛出和处理的异常。一般来说我们只关心Exception类,它的子类可以分为两类:

  • 一般异常(checkedException

主要指SQL、IO异常,对于这种异常JVM会强制我们对其进行catch处理。

  • 运行时异常(runtimeException

这类异常JVM会自动地抛出来,不需要我们手动去检查,如果写了代码反而会混乱。

处理异常可以使用try...catch语句,try用来指定可能会发生异常的程序代码,catch用来捕获异常,如果发生了异常,那么后面的代码将不会执行,但假设存在finally,不管发生没发生异常,finally代码块都会被执行(注意:如果在try语句前有返回点,则finally代码块不会被执行;在try块或catch块中有System.exit(0)这种语句,finally也不会执行,因为JVM都被停止运行了。)。如果try...catch中有return,它不会影响finally,在执行return的时候只是把return后面的值复制一份到返回变量中。可以使用throw明确抛出一个异常,throws用来表明一个方法可能抛出的各种异常。

java中可以使用assert(断言)进行开发的调试,assert后面跟一个布尔值的表达式,如果为false说明程序已经错误了,会抛出一个AssertionException,如果assert后面有“:”和表达式,则表示当条件为假时,将表达式的值传入到AssertionException的构造函数中。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 有师弟私信我:“师姐,我要来你们单位上班了,但是我有些犹豫,不知道未来的路该怎么走,你能给我些建议吗?”看着这短短...
    王木木_34a4阅读 3,720评论 7 5
  • 图片来自网络,如有侵权请联系删除。 在此致谢图片作者! 欲往深山饮清泉 思遇神人结仙缘 清修脱俗悟禅机 诸君莫笑我...
    青松_534d阅读 2,767评论 2 4
  • 当你会做预算报价,却由于粗心犯低级错误,不可原谅的错误,多花了很多时间。应该高度自责,杜绝以后犯同样的错误。其实你...
    莲花舒梓慧阅读 3,584评论 0 1
  • 吃完晚饭后,在微博上看到一个话题#我与世界只差一个你#瞬间击中小女纸那颗柔软的心,毫不犹豫的点击进去,却发现原来是...
    莫吉桑阅读 4,132评论 0 1
  • 14个月的二宝学走路,他踉踉跄跄的在前面走,我在后边紧跟着,他快我也快,他慢我也慢,他停我就停。我弓着腰,伸出的双...
    申振柱阅读 3,421评论 0 1

友情链接更多精彩内容