日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Lombok介绍、附比较好用的几种注释推荐

發布時間:2024/2/28 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Lombok介绍、附比较好用的几种注释推荐 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一. 前言

當屬性多時會出現大量的 getter/setter 方法,冗余,且一旦修改屬性,就需要修改對應的方法。會耗費大量的時間,也會影響美觀,Lombok因此誕生,目的是讓java變得簡潔,快速。

Lombok 可以提高開發效率。


二. Lombok使用

1)引入相應的Maven包

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.10</version><scope>provided</scope></dependency>

2)在idea中下載Lombok插件

在idea的setting設置中的plugins,搜索lombok插件,下載完后,會讓你重啟idea,重啟idea就可以了.

注意:idea 2020最后一個版本及以后,已經內置了Lombok插件,無需下載。


三. 常用方法

lombok使用過程中主要是靠注解起作用的,官網上的文檔里面有所有的注解,這里不一一羅列,只說明其中幾個比較常用的。

@Setter @Getter 生成 get、set 方法

使用lombok:

import lombok.AccessLevel; import lombok.Getter; import lombok.Setter; public class GetterSetterExample {@Getter @Setter private int age = 10;@Setter(AccessLevel.PROTECTED) private String name; }

不使用lombok:

public class GetterSetterExample {private int age = 10;private String name;public int getAge() {return age;}public void setAge(int age) {this.age = age;}protected void setName(String name) {this.name = name;} }

@NonNull: 可以幫助我們避免空指針。

使用lombok:

import lombok.NonNull;public class NonNullExample extends Something {private String name; public NonNullExample(@NonNull Person person) {super("Hello");this.name = person.getName();} }

不使用lombok:

public class NonNullExample extends Something {private String name; public NonNullExample(@NonNull Person person) {super("Hello");if (person == null) {throw new NullPointerException("person");}this.name = person.getName();} }

@Cleanup: 自動幫我們調用close()方法。

使用lombok:

import lombok.Cleanup; import java.io.*; public class CleanupExample {public static void main(String[] args) throws IOException {@Cleanup InputStream in = new FileInputStream(args[0]);@Cleanup OutputStream out = new FileOutputStream(args[1]);byte[] b = new byte[10000];while (true) {int r = in.read(b);if (r == -1) break;out.write(b, 0, r);}} }

不使用lombok:

import java.io.*;public class CleanupExample {public static void main(String[] args) throws IOException {InputStream in = new FileInputStream(args[0]);try {OutputStream out = new FileOutputStream(args[1]);try {byte[] b = new byte[10000];while (true) {int r = in.read(b);if (r == -1) break;out.write(b, 0, r);}} finally {if (out != null) {out.close();}}} finally {if (in != null) {in.close();}}} }

此外還有:

  • @NoArgsConstructor @AllArgsConstructor 生成無參、全參構造器
  • @ToString 生成toString方法,
  • @Data 生成get、set、toString等所有常用方法。

以上就是Lombok常用的方法了,記住這些就可以適用99%的場景了。

總結

以上是生活随笔為你收集整理的Lombok介绍、附比较好用的几种注释推荐的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。