생성자와 this, this()에 대해서 서술하시오
생성자 (Constructor)
- 클래스 이름과 동일한 이름의 메소드를 말하며 객체 생성 시 자동 수행되어 멤버변수들의 값을 초기화 할 목적으로 사용하는 특수한 메소드
- 생성자는 호출문에 의해서 동작하는 것이 아니라 객체 생성 시에 자동 수행하기 떄문에 리턴의 개념이 없다.
따라서 생성자 이름의 왼쪽에 리턴 값이 오지 않음 - 생성자는 중복하여 정의할 수 있음(Overload)
단, 중복하여 정의하기 위해서는 매개변수의 개수나 자료형이 달라야 함. - 사용자가 생성자를 하나라도 만들지 않으면 기본생성자가 제공되지만 하나라도 만들기 시작하면 더이상 기본생성자는 제공되지 않음
this와 this()에 대하여 설명하시오
- 메소드나 생성자의 매개변수 이름을 의미있는 이름으로 정해주다 보면 멤버이름과 동일하게 됩니다. 이때에 멤버 자신을 구별할 목적으로 this를 사용
- this()는 생성자가 중복정의 되어있을때 생성자 안에서 다른 생성자를 호출할 때 사용됨.
주의사항
- 반드시 생성자의 첫번째 문장에 와야한다. (바로 아래 그림 확인)
- 해당 그림은 에러이다. this()가 첫번째 문장에 오지 않았기 때문이다.
비정상 동작 화면(에러)
정상동작 화면
반응형
'기타 > 면접 질문' 카테고리의 다른 글
(간단 설명) 스프링의 주요 특징(DI, AOP), (0) | 2022.06.15 |
---|---|
throws, throw 한줄 설명 (0) | 2022.04.08 |
메소드 오버로딩, 오버라이딩 한 줄 설명 (0) | 2022.04.05 |
댓글