본문 바로가기
기타/면접 질문

생성자와 this, this()에 대해서 서술하시오

by kakk789 2022. 4. 4.

생성자와 this, this()에 대해서 서술하시오

생성자 (Constructor)

  • 클래스 이름과 동일한 이름의 메소드를 말하며 객체 생성 시 자동 수행되어 멤버변수들의 값을 초기화 할 목적으로 사용하는 특수한 메소드
  • 생성자는 호출문에 의해서 동작하는 것이 아니라 객체 생성 시에 자동 수행하기 떄문에 리턴의 개념이 없다.
    따라서 생성자 이름의 왼쪽에 리턴 값이 오지 않음 
  • 생성자는 중복하여 정의할 수 있음(Overload)
    단,
    중복하여 정의하기 위해서는 매개변수의 개수나 자료형이 달라야 함.
  • 사용자가 생성자를 하나라도 만들지 않으면 기본생성자가 제공되지만 하나라도 만들기 시작하면 더이상 기본생성자는 제공되지 않음

this와 this()에 대하여 설명하시오

  • 메소드나 생성자의 매개변수 이름을 의미있는 이름으로 정해주다 보면 멤버이름과 동일하게 됩니다. 이때에 멤버 자신을 구별할 목적으로 this를 사용
  • this()는 생성자가 중복정의 되어있을때 생성자 안에서 다른 생성자를 호출할 때 사용됨.
주의사항 
- 반드시 생성자의 첫번째 문장에 와야한다. (바로 아래 그림 확인)
- 해당 그림은 에러이다. this()가 첫번째 문장에 오지 않았기 때문이다.

비정상 동작 화면(에러)

정상동작 화면

반응형

댓글