美文网首页技术干货
关于异常处理

关于异常处理

作者: WinddddRunner | 来源:发表于2017-07-05 00:15 被阅读0次

一、为什么要有异常机制?

1、在传统语言C语言中,当你操作资源时,一般是通过函数返回值code来判断是否执行成功(一般是失败返回小于零的整数)。
2、脚本语言,比如Python、PHP等,由于没有返回类型的限制,一般是return false on failed。当然,这些脚本语言也有异常机制。
3、多返回值语言(Golang),一般是通过返回多个值(可能包含error对象),然后通过error值来判断操作是否成功。

二、总结

  从上面几个例子可以看出,①返回错误码②返回false等,这些错误信息不够清晰,很多时候也避免不了层层嵌套判断的漩涡中。③的方式还不错,不过每次都得check error。
  作为一门静态语言,java是单返回值、返回类型确定的,当出现异常不能返回指定的类型时(当然,你可以返回null或empty object,但一般不推荐返回null),这个时候异常机制便能很好地解决这个问题。函数调用者只需关心调用这个函数会返回什么,异常需不需要这层处理还是继续往上抛,可以大大减轻调用者的负担(如果不需要这层处理,我只需关心api会返回什么,按照自己的逻辑往下写,并不需要check error,资源释放推荐使用try-with-resource)
  但是如果是unchecked exception,则必须在doc注明函数会抛什么异常,以便调用者使用,这一点不管是java、python还是php。

当函数无法完成其宣称的任务的时候抛出异常!

相关文章

  • 关于异常处理

    首先是报错的时候对于异常的认知,多写多出错增长经验吧 python报错中英文对照-http://www.runoo...

  • 关于异常处理

    一、为什么要有异常机制? 1、在传统语言C语言中,当你操作资源时,一般是通过函数返回值code来判断是否执行成功(...

  • 阿里Java规范-02-异常日志

    =================(一)异常处理==================关于接口使用抛异常还是返回错误...

  • 你的c++团队还在禁用异常处理吗?

    关于c++的异常处理,网上有很多的争议,本文会介绍c++的异常处理的使用,以及我们应该使用异常处理吗,以及使用异常...

  • Java核心技术卷1异常处理阅读笔记

    异常处理 关于Java核心技术 卷1 的 异常处理章节记录 1. 检查型异常和非检查型异常 异常可以分为: che...

  • Objective-C - 异常处理(NSException)

    苹果关于异常的详细文档关于自定义异常或者扩展:Objective-C中处理异常是依赖于NSException实现的...

  • 每周阅读(10/16/2017)

    Kubernetes节点资源耗尽状态的处理 如何处理 K8s 异常?文中谈到了关于处理硬盘空间不足异常的一个具体的...

  • Checked Exception是恶魔

    关于异常处理,Java是孤独的。因为只有Java有Checked Exception(受检查异常)。其他语言,比如...

  • 关于Python的异常处理

    前言 异常处理在任何一门编程语言里都是值得关注的一个话题,良好的异常处理可以让你的程序更加健壮,清晰的错误信息更能...

  • (转)[Python]关于异常处理

    1.什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,Python无...

网友评论

    本文标题:关于异常处理

    本文链接:https://www.haomeiwen.com/subject/jpsthxtx.html