Java编码规范,让你的代码赏心悦目--错误处理

时间:2022-10-23 17:35:19
  • 先写try-catch-finally语句
    • 从某种意义上try代码块就像是事务。catch代码块将程序维持在一种持续状态。在编写可能出现异常的语句时,最好先写这个try/catch代码块。这样可以事先划定一个范围。
  • 给出异常发生的环境说明
    • 抛出的每个异常,都应当提供足够的环境说明,以便判断错误的来源和处所;
    • 应创建信息充分的错误信息,并和异常一起传递过去。在消息中,包括失败的操作和失败类型;
  • 依调用者需要定义异常类
    • 当我们在应用程序中定义异常类时,最重要的考虑应该是它们如何被捕获;
      • 不太好的示例:
        • Java编码规范,让你的代码赏心悦目--错误处理
      • 对此示例进行修改:

LocalPort就是一个简单的打包类,捕获并翻译由ACMEPort类抛出的异常:

Java编码规范,让你的代码赏心悦目--错误处理

Java编码规范,让你的代码赏心悦目--错误处理

  • 将第三方API打包是个良好的实践手段。打包一个第三方API,可以降低对它的依赖,可以不太痛苦的改用其他代码库;
  • 别返回null
    • 返回Null是给自己或是调用者增加工作量,因为每次我们都要判断是否为Null;
    • 如果要在方法中返回null,不如直接抛出一个异常;
    • 在调用第三方返回null的方法时,可以对这个方法进行打包;
  • 别传递null
    • 除非API要求你向它传递NULL,否则尽可能避免传递null值;