JAVA/SPRING

[SPRING] @NoArgsConstructor

오선지♬ 2024. 9. 24. 20:11
728x90
반응형

 

  • 목적 : 파라미터가 없는 기본 생성자 를 자동으로 생성합니다.
  • 군의 필드 생성과 성공 없이도 군사력이 없는 생성자 를 추가합니다.
  • 주의 사항( final필드) : final필드가 있는 경우 기본적으로 생성된 필드의 임시 필드가 필요하기 때문에 발생할 수 있습니다. @NoArgsConstructor(force = true)​ final​하지만 이 경우 final필드는 추측으로 설정됩니다( null, 0, false 등).
import lombok.NoArgsConstructor;

@NoArgsConstructor
public class Example {
    private final String name;   // 기본 생성자에서 초기화되지 않으면 에러 발생
    private int age;
}

 

위 코드는 다음과 같은 기본 생성자를 자동으로 포함합니다:

public Example() {
    // 기본 생성자
}

하지만 final필드 name때문에 오류가 발생할 수 있습니다. 이 경우를 @NoArgsConstructor(force = true)사용하면:

@NoArgsConstructor(force = true)
public class Example {
    private final String name;   // 강제로 null로 초기화됨
    private int age;
}
728x90
반응형

'JAVA > SPRING' 카테고리의 다른 글

[SPRING] 스케쥴러 테스트  (0) 2024.10.24
[SPRING] @NoArgsConstructor(force = true)옵션  (0) 2024.09.25
[SPRING] @Value  (0) 2024.09.19
[SPRING]fixedDelay vs fixedRate  (0) 2024.09.18
[SPRING] fixedDelay  (0) 2024.09.17