91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么簡化java代碼

發布時間:2022-02-23 14:52:39 來源:億速云 閱讀:137 作者:iii 欄目:開發技術

這篇文章主要介紹“怎么簡化java代碼”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“怎么簡化java代碼”文章能幫助大家解決問題。

原理

lombok 可以通過注解的方式,在編譯的時候為屬性生成構造器、getter/setterequalshashcodetoString方法。這樣我們就不用再手動去寫這些方法了。

引用

lombok 的使用需要引用 jar 包,可以在官網下載,也可以使用 maven 添加對應依賴。

maven 依賴:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
    <scope>provided</scope>
</dependency>

使用

在類上使用@Data注解,會為類的所有屬性自動生成setter/getterequalscanEqualhashCodetoString方法(如為final屬性,則不會為該屬性生成setter方法)。

public class DataExample {
  private final String name;
  private int age;
  private double score;
  private String[] tags;
  
  public DataExample(String name) {this.name = name;}

  public String getName() {return this.name;}
  public void setAge(int age) {this.age = age;}
  public int getAge() {return this.age;}
  public void setScore(double score) {this.score = score;}
  public double getScore() {return this.score;}
  public String[] getTags() {return this.tags;}
  public void setTags(String[] tags) {this.tags = tags;}
}

上面的代碼是一個簡單的 pojo 類,當我們使用 lombok 之后:

import lombok.AllArgsConstructor;import lombok.Data;import lombok.EqualsAndHashCode;import lombok.NoArgsConstructor;import lombok.ToString;@Data
public class DataExample {
  private final String name;
  private int age;
  private double score;
  private String[] tags;
}

有沒有發現?代碼量瞬間減少了一半?其實使用@Data生成的代碼遠不止這些,他還生成了equalscanEqualhashCodetoString的方法,在 IDE 中可以嘗試調用一下就能發現了。

@Data注解的目標是生成全部需要自動生成的代碼,但是有時候我們并不需要完全自動生成,這時候就可以使用單個的修飾符來注解了。

@Data集合了@ToString@EqualsAndHashCode@Getter/@Setter@RequiredArgsConstructor的所有特性。換言之,這些注解也可以單個使用,接下來以@Getter/@Setter為例來介紹一下上面代碼可以化簡成什么樣子。

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

public class DataExample {
    @Getter
    private final String name;    @Getter @Setter    private int age;
    @Getter @Setter
    private double score;
    @Getter @Setter    
    private String[] tags;
}

關于“怎么簡化java代碼”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泌阳县| 荣昌县| 安福县| 澄江县| 通城县| 东阳市| 麻栗坡县| 瑞安市| 阿坝| 周口市| 玉田县| 广饶县| 桃园县| 靖安县| 周至县| 财经| 常山县| 赣州市| 叙永县| 巴南区| 汶川县| 来凤县| 泗水县| 仙桃市| 公主岭市| 甘南县| 桃园县| 涟源市| 九江县| 榆社县| 灵武市| 高唐县| 刚察县| 耒阳市| 福贡县| 德清县| 江津市| 兴海县| 无锡市| 文昌市| 河池市|