Java中的@Accessors使用詳解
一、什么是@Accessors注解?
@RequiredArgsConstructor是Lombok的一個注解,簡化了我們對setter和getter方法操作。
它可以作用在類上,也可以作用在類的單個屬性上。
修飾類的時候?qū)@個類的所有屬性都是有效的,修飾單個屬性的時候,只對當前的屬性有效。
二、@Accessors導包
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> </dependency>
三、@Accessors源碼講解和使用案例

從源碼可以知道,該注解有三個屬性,分別是fluent,chain,prefix。
其中,fluent和chain是boolean類型,默認值都是false,prefix是數(shù)組類型,默認值為空。
fluent:默認值為false,當該值為true時,省略對象賦值和取值的set和get前綴
@Data
@Accessors(fluent = true)
public class Animal {
String name;
Integer age;
public static void main(String[] args) {
Animal animal = new Animal();
//賦值的時候省略了前綴set
animal.name("狗");
//取值的時候省略了前綴get
String animalName = animal.name();
System.out.println(animalName);
}
}
chain:默認值為false,當該值為true時,對應字段的setter方法調(diào)用后,會返回當前對象
@Data
@Accessors(chain = true)
public class Animal {
String name;
Integer age;
public static void main(String[] args) {
//new出的對象直接賦值,返回當前對象
Animal animal = new Animal().setName("狗").setAge(2);
System.out.println("直接返回當前對象:"+animal.toString());
}
}
prefix:該屬性是一個字符串數(shù)組,默認值為空,該數(shù)組有值的時候,表示忽略字段對應的前綴,生成對應的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進行賦值
animal.setName("狗");
//忽略了前綴bb進行賦值
animal.setAge(2);
System.out.println("忽略了前綴aa和bb:" + animal.toString());
}
}
到此這篇關(guān)于Java中的@Accessors使用詳解的文章就介紹到這了,更多相關(guān)@Accessors使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決Java變異出現(xiàn)錯誤No enclosing instance of type XXX is accessible
這牌你文章主要給大家分享解決Java變異出現(xiàn)錯誤,具體的饑餓絕方案請看下面文章的內(nèi)容,需要的朋友可以參考一下,希望能幫助到你2021-09-09
使用SpringBoot的CommandLineRunner遇到的坑及解決
這篇文章主要介紹了使用SpringBoot的CommandLineRunner遇到的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02
Java web.xml之contextConfigLocation作用案例詳解
這篇文章主要介紹了Java web.xml之contextConfigLocation作用案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
SpringBoot2.x 參數(shù)校驗問題小結(jié)
這篇文章主要介紹了SpringBoot2.x 參數(shù)校驗一些問題總結(jié),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-08-08
Java 實現(xiàn)實時監(jiān)聽文件夾是否有新文件增加并上傳服務器功能
本文中主要陳述一種實時監(jiān)聽文件夾中是否有文件增加的功能,可用于實際文件上傳功能的開發(fā)。本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友參考下吧2019-09-09

