객체가 처음부터 올바른 상태가 되게 합니다.
생성자는 클래스 이름과 같고 반환 타입이 없습니다. new가 호출할 때 필수 필드를 초기화하고 유효하지 않은 인수는 즉시 예외로 거부합니다.
예제에서 ClassName(parameters) { this.field = parameter; } 부분부터 찾으세요. 선언 타입, 실제 객체와 반환값을 한 줄씩 따라가면서 컴파일 단계에서 잡히는 문제와 실행 중 생기는 문제를 구분하세요.
this(...)와 super(...) 생성자 호출은 첫 문장이어야 합니다. 중복 초기화는 주 생성자 하나로 모읍니다.
생성 후 setter를 여러 번 호출해야만 유효해지는 객체보다 한 번에 완성되는 객체가 안전합니다.
현재 코드를 먼저 실행해 출력과 타입 흐름을 확인한 뒤 빈 제목을 거부하는 검증을 추가하세요.
void를 붙이면 생성자가 아니라 일반 메서드가 되어 필드가 초기화되지 않습니다.
직접 바꿔보세요빈 제목을 거부하는 검증을 추가하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.