欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Lombok怎么在java中使用

Lombok怎么在java中使用?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)公司2013年成立,先為農(nóng)安等服務建站,農(nóng)安等地企業(yè),進行企業(yè)商務咨詢服務。為農(nóng)安企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

Lombok是什么?

Lombok是一個通過注解以達到減少代碼的Java庫,如通過注解的方式減少get,set方法,構造方法等。

如何安裝Lombok?

如何安裝使用Lombok呢?

方法一

通過向lib文件夾中添加lombok.jar包即可,

方法二

如果使用的是Maven,則可在項目的pom.xml文件中添加以下依賴:

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

通過以上兩種方法的確可以使用Lombok的相關API了,但無論是Intelij idea,還是Eclipse默認情況下是不能識別的,我們還要讓idea識別起來。
Intellij Idea方法:

File->settings->Plugins->Browse repositories->Lombok

如何使用Lombok?

Lombok提供注解方式來提高代碼的簡潔性,常用注解有:

  • @Data

  • @Setter @Getter

  • @NonNull

  • @Synchronized

  • @ToString

  • @EqualsAndHashCode

  • @Cleanup

  • @SneakyThrows

下面分別介紹每個方法的作用以及對應的源代碼 @Data

該注解相當于同時加上以下注解@Setter @Getter,@ToString,@EqualsAndHashCode,作用于類中 使用:

/**
* author: andy
* date: 17-4-22
* blog: www.andyqian.com
*/
@Data
public class Person {
private String name;
private String address;
private String city;
private String state;
private String zip;
private Date brithday;
}

效果如下:

@Getter@Setter

作用于屬性上,自動生成get,set方法.

/**
* author: andy
* date: 17-4-22
* blog: www.andyqian.com
*/
public class Person {
@Getter@Setter
private String name;
}

等價源碼:

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

@NonNull

該注解快速判斷是否為空,如果為空,則拋出java.lang.NullPointerException
使用方法:

/**
* author: andy
* date: 17-4-22
* blog: www.andyqian.com
*/
public class Person {
private String name;
@Setter@Getter@NonNull
private List<Person> member;
}

源碼:

@NonNull
private List<Person> members;
public Family(@NonNull final List<Person> members) {
if (members == null) throw new java.lang.NullPointerException("members");
this.members = members;
}
@NonNull
public List<Person> getMembers() {
return members;
}
public void setMembers(@NonNull final List<Person> members) {
if (members == null) throw new java.lang.NullPointerException("members");
this.members = members;
}

@Synchronized

該注解自動添加到同步機制,有趣的是,生成的代碼并不是直接鎖方法,而是鎖代碼塊, 作用范圍是方法上
使用方法:

private DateFormat format = new SimpleDateFormat("MM-dd-YYYY");
@Synchronized
public String synchronizedFormat(Date date) {
return format.format(date);
}

生成等價源碼:

private final java.lang.Object $lock = new java.lang.Object[0];
private DateFormat format = new SimpleDateFormat("MM-dd-YYYY");
public String synchronizedFormat(Date date) {
synchronized ($lock) {
return format.format(date);
}
}

@ToString

該方法大家應該非常熟悉,但需要注意的是:@ToString有多個屬性可以進一步設置:

  • callSuper 是否輸出父類的toString方法,默認為false

  • includeFieldNames 是否包含字段名稱,默認為true

  • exclude 排除生成tostring的字段

使用方法:

/**
* author: andy
* date: 17-4-22
* blog: www.andyqian.com
*/
@ToString(callSuper = true,exclude ={"name"})
public class Person {
private String name;
private String address;
}

等價源碼:

public String toString() {
return "Person{" +
"address='" + address + '\'' +
'}';
}

@Cleanup

注釋可用于確保已分配的資源被釋放,如IO的連接關閉。
使用方法:

public void testCleanUp() {
try {
@Cleanup ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.write(new byte[] {'Y','e','s'});
System.out.println(baos.toString());
} catch (IOException e) {
e.printStackTrace();
}
}

等價源碼:

public void testCleanUp() {
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try {
baos.write(new byte[]{'Y', 'e', 's'});
System.out.println(baos.toString());
} finally {
baos.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}

看完上述內容,你們掌握Lombok怎么在java中使用的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

當前標題:Lombok怎么在java中使用
網(wǎng)址分享:http://aaarwkj.com/article26/jjhecg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、品牌網(wǎng)站制作、定制網(wǎng)站、品牌網(wǎng)站建設、電子商務、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設
九九热最新视频免费看| 日韩欧美中文字幕区| 99热视频在线观看免费| 亚洲中文字幕婷婷在线| 中文字幕日本乱码精品久久| 欧美午夜激情片在线观看| 国产欧美日韩精品国产| 岛国av不卡一二三区| 亚洲美女高潮久久久久久久久| 香蕉网性欧美在线视频| 国产老熟女高潮视频| 国产91啦中文在线观看| 日本一区中文字幕怎么用| 青青草原在线影视一区| 超碰欧美性欧美最猛性| 国产欧洲日本一区二区| 日韩av在线播放亚洲天堂| 可以免费在线看的av网站| 欧美黑人少妇高潮喷水| 夜夜嗨av一区二区三区| 久久精品免费激情视频| 欧美一区二区三区成人网| 青青草原免费在线观看| 欧美日韩三级性生活水平| 欧美二区三区精品在线| 欧美日韩一级特黄大片| 日本精品免费专区在线观看| 久久精品欧美日韩视频| 全国最大成人免费视频| 大香蕉欧美日韩在线视频| 日本写真视频一区二区三区| 日本精品av免费观看| 国产精品亚洲综合制服日韩 | 亚洲香蕉av在线一区二区三区| 97成人在线视频免费播放| 亚洲欧美日韩在线第三页| 四虎精品视频在线播放| 国语精品对白交换日韩| 日韩精品免费一区二区三区| 91午夜精品在线观看| 欧美黄色免费电影网站|