24.05.17 21:23 작성
·
160
0
knight에 기타 생성자를 만들어 주면, 기본 생성자를 사용 할 수 없다고 했는데, 새로운 knight를 만들어 주어 기본 생성자를 이용하니깐 잘 만들어 지더라구요.
제가 잘 못 이해 하는걸까요?
같은 객체일 경우 기본 생성자가 실행이 안된다는 말씀 일까요?
새로운 객체면 상관 없는거구요?
답변 1
0
2024. 05. 18. 17:32
기본 생성자를 '사용할 수 없다'의 의미는
명시적으로 Knight() { } 이라는 기본 생성자를 만들지 않으면 컴파일 에러가 난다는 의미였습니다.
원래 기본 생성자를 코드에서 만들지 않더라도 컴파일러가 자동으로 만들어주는데,
다른 타입의 생성자를 만들면 기본 생성자 자동 생성이 되지 않습니다 (문법상)
2024. 05. 20. 23:55
아~ 그렇군요 답변 감사합니다! ㅎㅎ