클래스 B를 포함하는 간단한 클래스 A를 갖는 경우 null의 경우 클래스 b의 새 인스턴스를 만드는 롬복 주석이 있습니까?@Getter @Setter annotation을 사용하는 동안 null의 경우 객체를 생성하기 위해 lombok을 만드는 방법이 있습니까?
public class A {
@Getter
@Setter
private B b;
}
클래스 B를 포함하는 간단한 클래스 A를 갖는 경우 null의 경우 클래스 b의 새 인스턴스를 만드는 롬복 주석이 있습니까?@Getter @Setter annotation을 사용하는 동안 null의 경우 객체를 생성하기 위해 lombok을 만드는 방법이 있습니까?
public class A {
@Getter
@Setter
private B b;
}
나는이 기능이 존재하지 않습니다. documenation에는 주석에 대한 여러 구성 키가 나열되어 있지만 이후의 기능은 나열되어 있지 않습니다. 나는이 시나리오에이 기능을 싶지만
:
private List<String> foo; public List<String> getFoo() { if (this.foo == null) { this.foo == new ArrayList<>(); } return this.foo; }
:
@Getter(lazy = true) private List<String> foo = new ArrayList<>();
는 다음과 같이 생성누군가가 최근 Lombok Github page에서이 같은 요구 물론, 그것은 double-checked locking이나 AtomicReference를 사용할 수 있습니다. 그러나 여기서 중요한 것은 null 참조보다는 빈리스트를 얻는 것입니다. . 예를 들어 JAXB 클래스의 일반적인 관용구인데 롬복으로 크기를 줄이는 것이 좋습니다.
따라서이 기능은 아직 구현되지 않았습니다. 내가 너라면, 나는이 경우 주석을 사용하지 않고 대신 손으로 원하는 방법을 만들 것이다.
수동 기본 초기화의 부족, '개인 B b = 새 B();', 그렇게 생각하지 마십시오. – zapl