中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Lombok在idea中如何使用

發布時間:2023-03-22 13:54:15 來源:億速云 閱讀:146 作者:iii 欄目:開發技術

這篇文章主要講解了“Lombok在idea中如何使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Lombok在idea中如何使用”吧!

一、什么是lombok

        Lombok是一個可以通過簡單的注解形式,來幫助我們簡化消除一些必須有但顯得很臃腫(如果getter、setter方法)的Java代碼的工具,通過使用對應的注解,可以在編譯源碼的時候生成對應的方法

二、如何使用 

1.導入lombok的maven包

    <dependency>
 
          <groupId>org.projectlombok</groupId>
          <artifactId>lombok</artifactId>
          <version>1.18.20</version>
 
    </dependency>

2.在idea中添加對lombok的支持

idea中File&mdash;&mdash;Settings&mdash;&mdash;Pulgins&mdash;&mdash;上方選擇Marketplace搜索Lombok點擊Install安裝

Lombok在idea中如何使用

3.設置lombok在編譯階段生效

Lombok在idea中如何使用

 三、lombok中常用的注解

1.@ToString

作用在類上,覆蓋默認的的toString()方法。可以通過of屬性設置顯示什么字段,通過exclude屬性排除某些字段

//toString方法顯示username、age屬性,排除password屬性
@ToString(of={"username","age"},exclude={"password"})
public class User{
    private String username;
    private String password;
    private int age;   
}

 2.@EqualsAndHashCode

作用在類上,覆蓋默認的equals、hashCode方法

3.@NonNull

作用在成員變量和參數中,標識不能為空,否則拋出空指針異常 

//屬性password、參數username不能為空,否則拋出空指針異常
public class User{
    private String username;
@NonNull private String password;
    private int age;  
    public String sleep (@NonNull String username){
        System.out.println(username+"在睡覺")
    }
}

 4.@NoArgsConstructor、@RequiredArgsConstructor、@AllArgsConstructor

@NoArgsConstructor&mdash;&mdash;作用在類上,生成一個無參構造方法

@RequiredArgsConstructor&mdash;&mdash;作用在類上,這個注解可以生成帶參或者不帶參的構造方法。若帶參數,只能是類中所有帶有@NonNull注解的和以final修飾的未經初始化的字段

@AllArgsConstructor&mdash;&mdash;作用在類上,生成一個包含變量的構造方法
   如果變量使用了@NotNull會校驗是否為空

5.@Date

作用在類上自動生成所有字段的toString、EqualsAndHashCode、Getter方法,為非final字段生成Setter、RequiredArgsConstructor方法  

6. @Builder

作用在類上,為作用的類生成相對略微復雜的構建器API,可以通過下方形式調用代碼實例化對象

Student.builder()
               .sno( "001" )
               .sname( "admin" )
               .sage( 18 )
               .sphone( "110" )
               .build();

@Builder內部幫我們做了什么?

創建一個名為ThisClassBuilder的內部靜態類,并具有和實體類形同的屬性(稱為構建器)。在構建器中:對于目標類中的所有的屬性和未初始化的final字段,都會在構建器中創建對應屬性。在構建器中:創建一個無參的default構造函數。在構建器中:對于實體類中的每個參數,都會對應創建類似于setter的方法,只不過方法名與該參數名相同。 并且返回值是構建器本身(便于鏈式調用),如上例所示。在構建器中:一個build()方法,調用此方法,就會根據設置的值進行創建實體對象。在構建器中:同時也會生成一個toString()方法。在實體類中:會創建一個builder()方法,它的目的是用來創建構建器。

感謝各位的閱讀,以上就是“Lombok在idea中如何使用”的內容了,經過本文的學習后,相信大家對Lombok在idea中如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

AI

肥城市| 和顺县| 高淳县| 阳原县| 大姚县| 静宁县| 安康市| 克拉玛依市| 琼中| 广平县| 肇州县| 行唐县| 北票市| 普兰县| 新干县| 若尔盖县| 天峨县| 福州市| 田东县| 淮阳县| 光山县| 彰化县| 定远县| 西充县| 蒲城县| 灵台县| 台中市| 古浪县| 张家口市| 长海县| 浑源县| 杂多县| 循化| 杭锦旗| 陈巴尔虎旗| 昌乐县| 安顺市| 宿迁市| 湟源县| 华安县| 洛浦县|