Lombok에서 @Getter@Setter의 동작 설명
입문
Lombok의
@Getter, @Setter에서 동작 검증을 한 기록이다.Lombok의 가져오기 방법과
@Getter과 @Setter 이외의 주석의 사용 방법은 여기에 쓰지 않고 다른 사람이 정리한 것을 보십시오.Lombok 정보
본론으로 들어가기 전에 Lombok을 간단히 설명해 주세요.
Lombok은 특정 주석을 이용하여
getter, setter, toString 등을 자동으로 생성하는 라이브러리입니다.개발 단계에서는 POJO 개체 등의 기술량을 줄일 수 있습니다.
현재 getter,setter를 직접 쓰는 사람은 드물지만, 자동으로 생성하기 위해 맞춤법 오류를 없앨 수 있습니다.
실천
그럼 바로 사용해 보세요.
특정 필드에 getter,setter 만들기
이 경우 setter, setter를 만들 필드에
@Getter 및 @Setter 을 부여합니다.Product.java
import lombok.Getter;
import lombok.Setter;
public class Product {
@Getter
@Setter
private long id;
@Getter
private String name = "マウス";
}
대강을 볼 때, 필드에 지정한 getter,setter를 만드는 것을 볼 수 있습니다
실제 행동 여부를 확인하다.
public static void main(String[] args) {
Product product = new Product();
product.setId(1L);
System.out.println(product.getId());
System.out.println(product.getName());
}
콘솔1
マウス
너는 그것들이 모두 이렇게 정확하게 움직이는 것을 볼 수 있다.클래스의 모든 필드에 getter와setter를 만들려면
방금 필드에
@Getter 또는 @Setter 을 수여했는데 이 경우 클래스에 @Getter 및 @Setter 을 수여합니다.Product.java
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Product {
private long id;
private String name;
}
클래스의 모든 필드가 getter와setter를 만들었음을 볼 수 있습니다.
동작 검증을 생략합니다.
getter는 모든 필드이고, setter는 일부 필드입니다.
이런 상황에서 모든 필드에 적용하고자 하는 것은 클래스이고, 일부 필드에 적용하고자 하는 것은 필드이며, 각자의 주석을 부여한다.
Product.java
import lombok.Getter;
import lombok.Setter;
@Getter
public class Product {
@Setter
private long id;
private String name;
}
지정한
id대로setter를 만들었습니다.일부 필드의 getter와setter만 만들고 싶지 않으면
클래스의 거의 모든 필드에 getter와setter를 만들고 싶지만, 일부 필드에 getter와setter를 만들고 싶지 않으면
AccessLevel.NONE 를 지정하십시오.AccessLevel getter, setter의 접근 수식자를 수정할 수 있습니다. 어떤 내용도 지정하지 않으면 public 입니다.Product.java
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Product {
@Getter(AccessLevel.NONE)
private long id;
@Setter(AccessLevel.NONE)
private String name;
}
지정한
AccessLevel.NONE getter, setter를 만들지 않았습니다.getter, setter의 동작을 기본값에서 바꾸려고 할 때
개발 중이라면 클래스의 일부인 getter와setter의 동작만 바꾸고 싶은 상황에 직면하게 될 것입니다.
이런 상황에서 동작을 바꾸고 싶은 필드를 실현하는 getter,setter.
이번에는
name 필드의 getter 만 설치하세요.Product.java
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Product {
private long id;
private String name;
public String getName() {
return "商品名: " + name;
}
}
대강에서 순서를 바꿨지만 있음getter을 알 수 있다.
아까처럼 돌아가 보세요.
public static void main(String[] args) {
Product product = new Product();
product.setId(1L);
product.setName("キーボード");
System.out.println(product.getId());
System.out.println(product.getName());
}
콘솔1
商品名: キーボード
이렇게 스스로 실현하는 getter는총결산
AccessLevel.NONE 을 지정합니다.참고 자료
Reference
이 문제에 관하여(Lombok에서 @Getter@Setter의 동작 설명), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/scallop722/items/e91db97658d90b6df1e8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)