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());
}
}
到此這篇關于Java中的@Accessors使用詳解的文章就介紹到這了,更多相關@Accessors使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
FreeMarker如何調(diào)用Java靜態(tài)方法及靜態(tài)變量方法
這篇文章主要介紹了FreeMarker如何調(diào)用Java靜態(tài)方法及靜態(tài)變量方法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
Java開發(fā)反射機制的實戰(zhàn)經(jīng)驗總結(jié)
反射是java中一種強大的工具,能夠使我們很方便的創(chuàng)建靈活的代碼,這些代碼可以再運行時裝配,無需在組件之間進行源代碼鏈接,但是反射使用不當會成本很高,這篇文章主要給大家介紹了關于Java開發(fā)反射機制的相關資料,需要的朋友可以參考下2021-07-07
10個實現(xiàn)Java集合,Map類型自由轉(zhuǎn)換的實用工具方法
這篇文章主要為大家整理了整理了10個實用工具方法,可以滿足?Collection、List、Set、Map?之間各種類型轉(zhuǎn)化,文中的示例代碼講解詳細,需要的可以參考下2023-09-09
Python中scrapy框架的ltem和scrapy.Request詳解
這篇文章主要介紹了Python中scrapy框架的ltem和scrapy.Request詳解,Item是保存爬取數(shù)據(jù)的容器,它的使用方法和字典類似,不過,相比字典,Item提供了額外的保護機制,可以避免拼寫錯誤或者定義字段錯誤,需要的朋友可以參考下2023-09-09
通過maven給沒有pom文件的jar包生成pom文件,maven項目引入本地jar包方式
這篇文章主要介紹了通過maven給沒有pom文件的jar包生成pom文件,maven項目引入本地jar包方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-05-05

