자동 기본 생성자는 개발자 생성자가 없을 때만 생긴다
컴파일러가 제공하는 기본 생성자는 클래스에 생성자 선언이 하나도 없을 때만 호출 가능한 서명에 추가됩니다.
| 선언 상태 | 컴파일러 제공 | new Member() |
|---|---|---|
| 생성자 0개 | Member() | 가능 |
| Member(String) | 없음 | 컴파일 오류 |
| Member() 직접 선언 | 직접 구현 | 가능 |
| 필수 값 존재 | 기본 생성자 불필요 | 의도적 차단 |
핵심: 필수 값이 있는 타입은 편의를 위해 무효 기본 상태를 여는 것보다 기본 생성을 차단하는 편이 안전합니다.