<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      六、Lombok 注解詳解(4)

      8,@Data

      (1)@Data 是一個復合注解,用在類上,使用后會生成:默認的無參構造函數、所有屬性的 getter、所有非 final 屬性的 setter 方法,并重寫 toString、equals、hashcode 方法。
      1 package com.example.demo;
      2  
      3 import lombok.Data;
      4  
      5 @Data
      6 public class User {
      7     private String name;
      8     private Integer age;
      9 }
      (2)上面的 @Data 等效于如下幾個注解結合使用:
       1 package com.example.demo;
       2  
       3 import lombok.*;
       4  
       5 @Setter
       6 @Getter
       7 @ToString
       8 @EqualsAndHashCode
       9 @NoArgsConstructor
      10 public class User {
      11     private String name;
      12     private Integer age;
      13 }

      9,@Value

      @Value 注解和 @Data 類似,區別在于它會把所有成員變量默認定義為 private final 修飾,并且不會生成 set() 方法。
       1 // 使用注解
       2 @Value
       3 public class ValueExample {
       4     String name;
       5     @Wither(AccessLevel.PACKAGE) @NonFinal int age;
       6     double score;
       7     protected String[] tags;
       8 }
       9  
      10 // 不使用注解
      11 public final class ValueExample {
      12     private final String name;
      13     private int age;
      14     private final double score;
      15     protected final String[] tags;
      16  
      17     public ValueExample(String name, int age, double score, String[] tags) {
      18         this.name = name;
      19         this.age = age;
      20         this.score = score;
      21         this.tags = tags;
      22     }
      23  
      24     //下面省略了其它方法
      25     //.....
      26 }

      10,@NonNull

      (1)注解在屬性上,標識屬性是不能為空,為空則拋出異常。換句話說就是進行空值檢查。
       1 package com.example.demo;
       2  
       3 import lombok.NonNull;
       4  
       5 public class NonNullExample {
       6     private String name;
       7  
       8     public NonNullExample(@NonNull User user) {
       9         this.name = user.getName();
      10     }
      11 }
      (2)上面相當與如下 Java 代碼:
       1 package com.example.demo;
       2  
       3 public class NonNullExample {
       4     private String name;
       5  
       6     public NonNullExample(User user) {
       7         if (user == null) {
       8             throw new NullPointerException("user");
       9         }
      10         this.name = user.getName();
      11     }
      12 }
      (3)下面是一個簡單的測試樣例:
      1 User user = null;
      2 try {
      3     NonNullExample example = new NonNullExample(user);
      4 }catch (NullPointerException ex) {
      5     return ex.toString();
      6 }

      11,@Cleanup

      (1)用于關閉并釋放資源,可以用在 IO 流上;
       1 public class CleanupExample {
       2     public static void main(String[] args) throws IOException {
       3         @Cleanup InputStream in = new FileInputStream(args[0]);
       4         @Cleanup OutputStream out = new FileOutputStream(args[1]);
       5         byte[] b = new byte[10000];
       6         while (true) {
       7             int r = in.read(b);
       8             if (r == -1) break;
       9             out.write(b, 0, r);
      10         }
      11     }
      12 }

      (2)上面相當與如下傳統的 Java 代碼:

       1 public class CleanupExample {
       2   public static void main(String[] args) throws IOException {
       3     InputStream in = new FileInputStream(args[0]);
       4     try {
       5       OutputStream out = new FileOutputStream(args[1]);
       6       try {
       7         byte[] b = new byte[10000];
       8         while (true) {
       9           int r = in.read(b);
      10           if (r == -1) break;
      11           out.write(b, 0, r);
      12         }
      13       } finally {
      14         if (out != null) {
      15           out.close();
      16         }
      17       }
      18     } finally {
      19       if (in != null) {
      20         in.close();
      21       }
      22     }
      23   }
      24 }
      posted on 2022-03-30 17:33  Tumulus  閱讀(375)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲av免费成人精品区| 啊灬啊灬啊灬快灬高潮了电影片段| 欧洲人妻丰满av无码久久不卡| 久久亚洲精品中文字幕馆| 亚洲成在人天堂一区二区| 各种少妇wbb撒尿| 无码里番纯肉h在线网站| 免费A级毛片无码A∨蜜芽试看| 小雪被老外黑人撑破了视频| 国产偷国产偷亚洲综合av| 国产办公室秘书无码精品99| 野外做受三级视频| 国产69精品久久久久乱码免费| 蜜桃臀av一区二区三区| 在线观看中文字幕码国产| 国产三级a三级三级| 色偷偷www.8888在线观看| 亚洲日韩AV秘 无码一区二区| 东方av四虎在线观看| 影音先锋啪啪av资源网站| 四虎永久在线精品免费看| 午夜福利偷拍国语对白| 色伦专区97中文字幕| 大肉大捧一进一出好爽视频动漫| 日韩高清不卡一区二区三区| 极品尤物被啪到呻吟喷水| 在线看无码的免费网站| 日韩精品一区二区三区久| 色老头亚洲成人免费影院| 精品国产乱码久久久人妻| 根河市| 日韩加勒比一本无码精品| 国产精品伦人视频免费看| 日韩国产亚洲欧美成人图片| 伊人中文在线最新版天堂| 国产无套内射普通话对白| 精品尤物国产尤物在线看| 亚洲最大成人免费av| 久久精品岛国AV一区二区无码| 日韩一区二区黄色一级片| 国产成人精品2021欧美日韩|