외부에서 받은 DTO 객체를 내부 Entity 객체로 변환하는 과정에서 정적 팩토리 메서드 사용
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@AllArgsConstructor(access = AccessLevel.PROTECTED)
@Getter
class MakePersonDto {
private int id = 10;
private String name = "Aaron";
}
@AllArgsConstructor(access = AccessLevel.PRIVATE)
class Person {
private int id;
private String name;
// 정적 팩토리 메서드
public static Person of(MakePersonDto dto) {
return new Person(dto.getId(), dto.getName());
}
}
of()를 사용하여 MakePersonDto를 Person 객체로 변환정적 팩토리 메서드를 이용해 싱글턴 패턴을 구현
getInstance() 메서드를 통해 하나의 인스턴스만 생성되도록 보장
public class Singleton {
private static Singleton instance;
private Singleton() {
// 생성자는 private으로 외부에서 호출할 수 없게 설정
}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
getInstance() 메서드를 통해 인스턴스 반환private으로 설정되어 있어 외부에서 new Singleton()으로 인스턴스 생성 불가