代码之家  ›  专栏  ›  技术社区  ›  Fraquack

Kotlin-接口方法引发的文档异常

  •  4
  • Fraquack  · 技术社区  · 7 年前

    既然Kotlin并没有检查到异常,那个么用什么正确的方法来记录预期由接口方法引发的异常呢?我应该在接口或实现类中记录它吗(仅当具体方法实际抛出它时)?

    1 回复  |  直到 7 年前
        1
  •  1
  •   s1m0nw1    6 年前

    由于客户端针对该接口编程,我建议在该接口的Javadoc/KDoc中制作文档。中讨论了您是否真的应该记录它们 this 线程示例:

    Oracle 建议:

    如果记录方法的API(包括它可以引发的异常)很好,那么为什么不也指定运行时异常呢?
    运行时异常表示由编程问题引起的问题,因此,无法合理预期API客户端代码会从中恢复或以任何方式处理。这些问题包括算术异常,例如被零除;指针异常,例如试图通过空引用访问对象;索引异常,例如试图通过太大或太小的索引访问数组元素。
    运行时异常可以发生在程序中的任何地方,在一个典型的程序中,异常可能非常多。必须在每个方法声明中添加运行时异常会降低程序的清晰度。

    因此,如果信息对客户有用,则应将其记录在案(即客户是否能够处理它,例如。 IOException ). 对于“常规”运行时异常,例如 IllegalArgumentException 我会说“不”,不要记录它们。