欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中的@Accessors使用詳解

 更新時(shí)間:2024年01月17日 09:47:24   作者:java-zh  
這篇文章主要介紹了Java中的@Accessors使用詳解,@RequiredArgsConstructor是Lombok的一個(gè)注解,簡(jiǎn)化了我們對(duì)setter和getter方法操作,它可以作用在類上,也可以作用在類的單個(gè)屬性上,需要的朋友可以參考下

一、什么是@Accessors注解?

@RequiredArgsConstructor是Lombok的一個(gè)注解,簡(jiǎn)化了我們對(duì)setter和getter方法操作。

它可以作用在類上,也可以作用在類的單個(gè)屬性上。

修飾類的時(shí)候?qū)@個(gè)類的所有屬性都是有效的,修飾單個(gè)屬性的時(shí)候,只對(duì)當(dāng)前的屬性有效。

二、@Accessors導(dǎo)包

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

三、@Accessors源碼講解和使用案例

從源碼可以知道,該注解有三個(gè)屬性,分別是fluent,chain,prefix。

其中,fluent和chain是boolean類型,默認(rèn)值都是false,prefix是數(shù)組類型,默認(rèn)值為空。

fluent:默認(rèn)值為false,當(dāng)該值為true時(shí),省略對(duì)象賦值和取值的set和get前綴

@Data
@Accessors(fluent = true)
public class Animal {
    String name;
    Integer age;
    public static void main(String[] args) {
        Animal animal = new Animal();
        //賦值的時(shí)候省略了前綴set
        animal.name("狗");
        //取值的時(shí)候省略了前綴get
        String animalName = animal.name();
        System.out.println(animalName);
    }
}

chain:默認(rèn)值為false,當(dāng)該值為true時(shí),對(duì)應(yīng)字段的setter方法調(diào)用后,會(huì)返回當(dāng)前對(duì)象

@Data
@Accessors(chain = true)
public class Animal {
    String name;
    Integer age;
    public static void main(String[] args) {
        //new出的對(duì)象直接賦值,返回當(dāng)前對(duì)象
        Animal animal = new Animal().setName("狗").setAge(2);
        System.out.println("直接返回當(dāng)前對(duì)象:"+animal.toString());
    }
}

prefix:該屬性是一個(gè)字符串?dāng)?shù)組,默認(rèn)值為空,該數(shù)組有值的時(shí)候,表示忽略字段對(duì)應(yīng)的前綴,生成對(duì)應(yīng)的getter和setter方法

@Data
@Accessors(prefix = {"aa", "bb"})
public class Animal {
    String aaName;
    Integer bbAge;
    public static void main(String[] args) {
        Animal animal = new Animal();
        //忽略了前綴aa進(jìn)行賦值
        animal.setName("狗");
        //忽略了前綴bb進(jìn)行賦值
        animal.setAge(2);
        System.out.println("忽略了前綴aa和bb:" + animal.toString());
    }
}

到此這篇關(guān)于Java中的@Accessors使用詳解的文章就介紹到這了,更多相關(guān)@Accessors使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論