0


spring注解@SneakyThrows

java中常见的异常有两种:Exception即非运行时异常(编译异常)、RuntimeException即运行时异常。

对于Exception即非运行时异常(编译异常),必须要开发者解决以后才能编译通过,解决的方法有两种,
1、throw到上层,
2、try-catch处理。

对于RuntimeException即运行时异常,在代码中可能会有RunTimeException,但是Java编译检查时是不会告诉你有这个异常的,它会在实际运行代码时则会暴露出来,比如经典的1/0,空指针等。

@SneakyThrows注解是由lombok中封装的注解,它就是为了消除上面那种抛出异常的模板代码。使用注解后,在编译时,自动将注解替换为try-catch。

@SneakyThrows
   public void utf8ToString(byte[] bytes) {
       return new String(bytes, "UTF-8");
   }

真正生成的代码

public void utf8ToString(byte[] bytes) {
    try {
      return new String(bytes, "UTF-8");
    } catch (Exception e) {
      throw Lombok.sneakyThrow(e);
    }
}    
标签: spring java 后端

本文转载自: https://blog.csdn.net/m0_47743175/article/details/127989108
版权归原作者 明湖起风了 所有, 如有侵权,请联系我们删除。

“spring注解@SneakyThrows”的评论:

还没有评论