使用Kotlin在方法中引发异常

cesards

我正在尝试将此Java代码转换为Kotlin:

public class HeaderInterceptor implements Interceptor {
  @Override public Response intercept(Chain chain) throws IOException {
    return null;
  }
}

问题是,当我实现这些方法时,我得到类似

class JsonHeadersInterceptor : Interceptor {
    override fun intercept(chain: Interceptor.Chain?): Response? {
        throw UnsupportedOperationException()
    }
}

我发现有关在Kotlin中引发异常的唯一信息是THIS

除了消除问号外,因为它不是必需的,为什么它也不能IOException以同样的方式处理呢?处理这种情况的最佳方法是什么?

热键

在Kotlin中,没有检查过的异常,也没有必须声明的异常,当然也可以不强制您捕获任何异常。即使从Java类派生,也不必声明method的异常throws

@Throws(SomeException::class)只是Java互操作性的一种手段,它允许使用throwsJava签名编写具有Java签名的功能,因此在Java中将有可能(并且有必要)处理异常。

相反,公共API异常应在KDoc中使用@throws标记进行记录

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在ActionResult方法中引发异常

来自分类Dev

EWS在自动发现方法中引发异常

来自分类Dev

EWS在自动发现方法中引发异常

来自分类Dev

使用引发异常的方法在静态块中初始化的最终静态变量

来自分类Dev

在模拟中存根两个方法使用Mockito和Spring MockMVC引发异常

来自分类Dev

如何捕获在使用MethodInfo.Invoke调用的方法中引发的异常?

来自分类Dev

为什么使用对象时通用方法中的动态参数会引发空引用异常?

来自分类Dev

当使用者在MassTransit RouterSlip中引发异常时,为何不调用Compensate方法

来自分类Dev

使用从未在方法主体中引发的throws子句声明已检查的异常

来自分类Dev

无法从通用方法中的构造方法中引发异常

来自分类Dev

异步方法引发异常

来自分类Dev

在Python中引发异常

来自分类Dev

在PostgreSQL中引发异常

来自分类Dev

在类方法中引发副作用并在调用方法中捕获的模拟异常给出“未引发”

来自分类Dev

如何查看给定方法中引发的运行时异常?

来自分类Dev

NSubstitute-模拟在返回Task的方法中引发异常

来自分类Dev

在匿名方法中执行任务时捕获引发的异常

来自分类Dev

Rubyist捕捉救援块中引发的异常的方法是什么?

来自分类Dev

在@DataProvider方法中引发异常后,TestNG跳过测试

来自分类Dev

如何记录在C#中引发通用异常的方法?

来自分类Dev

不会在“ try”块中引发异常的调用方法

来自分类Dev

在其他类中引发异常的调用方法

来自分类Dev

如何在CPython模块的init方法中引发异常

来自分类Dev

方法Illuminate \\ View \\ View :: __ toString()不得在Unix中引发异常

来自分类Dev

谁真正处理main方法中引发的异常?

来自分类Dev

为什么我不能在方法中引发异常(Java)

来自分类Dev

如何处理PHP 5.4中的方法引发的异常?

来自分类Dev

如何记录在C#中引发通用异常的方法?

来自分类Dev

如何在CPython模块的init方法中引发异常

Related 相关文章

  1. 1

    在ActionResult方法中引发异常

  2. 2

    EWS在自动发现方法中引发异常

  3. 3

    EWS在自动发现方法中引发异常

  4. 4

    使用引发异常的方法在静态块中初始化的最终静态变量

  5. 5

    在模拟中存根两个方法使用Mockito和Spring MockMVC引发异常

  6. 6

    如何捕获在使用MethodInfo.Invoke调用的方法中引发的异常?

  7. 7

    为什么使用对象时通用方法中的动态参数会引发空引用异常?

  8. 8

    当使用者在MassTransit RouterSlip中引发异常时,为何不调用Compensate方法

  9. 9

    使用从未在方法主体中引发的throws子句声明已检查的异常

  10. 10

    无法从通用方法中的构造方法中引发异常

  11. 11

    异步方法引发异常

  12. 12

    在Python中引发异常

  13. 13

    在PostgreSQL中引发异常

  14. 14

    在类方法中引发副作用并在调用方法中捕获的模拟异常给出“未引发”

  15. 15

    如何查看给定方法中引发的运行时异常?

  16. 16

    NSubstitute-模拟在返回Task的方法中引发异常

  17. 17

    在匿名方法中执行任务时捕获引发的异常

  18. 18

    Rubyist捕捉救援块中引发的异常的方法是什么?

  19. 19

    在@DataProvider方法中引发异常后,TestNG跳过测试

  20. 20

    如何记录在C#中引发通用异常的方法?

  21. 21

    不会在“ try”块中引发异常的调用方法

  22. 22

    在其他类中引发异常的调用方法

  23. 23

    如何在CPython模块的init方法中引发异常

  24. 24

    方法Illuminate \\ View \\ View :: __ toString()不得在Unix中引发异常

  25. 25

    谁真正处理main方法中引发的异常?

  26. 26

    为什么我不能在方法中引发异常(Java)

  27. 27

    如何处理PHP 5.4中的方法引发的异常?

  28. 28

    如何记录在C#中引发通用异常的方法?

  29. 29

    如何在CPython模块的init方法中引发异常

热门标签

归档