생성자 오버로딩

클래스 내에서 사용하는 생성자는 오버로딩이라는 방식을 통해 사용자가 다양한 방식으로 클래스를 초기화 할 수 있도록 지원하고 있습니다.

 

유의할 부분은 생성자 오버로딩시 [매개변수의 타입, 개수, 순서]를 다르게 해줌으로서 생성자를 구분 할 수 있는 근거를 만들어야합니다.

 

몇개의 샘플을 보겠습니다.

 

위와같이 Box 라는 이름의 클래스를 만들어 주었습니다.

 

또한 4개의 생성자를 만들어 주었습니다.

 

하지만, 기본적으로 아래와 같은 녀석이 숨어있습니다.

 

 

기본생성자라는 이름으로 불리는 녀석으로 아무런 매개변수를 갖고있지 않는 녀석으로 단순히 new함수를 통해 클래스를 초기화하는 역할만 수행하는 녀석입니다.

 

 

따라서 위 코드는 총 5개의 생성자(기본생성자 포함)를 갖고있습니다.

 

이 생성자들은 아래와 같은 방식으로 호출되어 클래스 내 필드를 초기화하게됩니다.

 

 

  1. 2021.01.10 17:39

    비밀댓글입니다

  2. 자바라네 2021.01.27 23:02

    안녕하세요. 글 잘 읽었습니다 ^^
    한 가지 오류가 있어 댓글 남겨요.

    기본생성자는 클래스 내부에 명시적으로 아무 생성자도 선언하지 않았을 때만 자동 생성되고, 매개변수가 있는 생성자가 존재할 경우 기본생성자는 자동 생성되지 않습니다.

    참고하시면 좋을 것 같아요 ^^

+ Recent posts