[Java] 생성자

@t189216·2023년 10월 26일
0

Java

목록 보기
14/19

객체를 생성했을 때 해당하는 함수를 한 번 호출함.

class 사람{
	String 이름;
    int 나이;
    
    사람(){
    	이름 = "홍길동";
        나이 = 22;
        }
    사람(String 이름, int 나이) {
        this.이름 = 이름;
        this.나이 = 나이;
        }

입력 ① : 사람 a사람1 = new 사람();
=> 홍길동, 22

입력 ② : 사람 a사람2 = new 사람("홍길순, 55");
=> 홍길순, 55


생성자 는 인스터가 생성될 때 호출되는 인스턴스 변수 초기화 메서드입니다. 메서드처럼 클래스 내에 선언되고 구조도 유사하지만, 리턴값이 없다는 점이 다릅니다.

  1. 생성자의 이름은 클래스의 이름과 같아야 한다.
  2. 생성자는 리턴 값이 없다.

기본 생성자

모든 클래스에는 반드시 하나 이상의 생성자가 정의되어야 합니다. 따로 정의하지 않는 경우, 컴파일러가 자동적으로 아래와 같은 내용의 기본 생성자를 추가하여 컴파일 합니다.

클래스이름(){}  // 기본 생성자
Point() {}   // Point 클래스의 기본 생성자

매개변수도 없고 아무런 내용도 없는 간단한 구조입니다. 클래스에 정의된 생성자가 하나도 없을 때만 컴파일러가 자동적으로 기본 생성자를 추가해줍니다.

this

같은 클래스의 멤버들 간에 서로 호출할 수 있는 것처럼 생성자 간에도 서로 호출이 가능합니다.

  1. 생성자의 이름으로 클래스이름 대신 this를 사용한다.
  2. 한 생성자에서 다른 생성자를 호출할 때는 반드시 첫 줄에서만 호출이 가능하다.
profile
Today I Learned

0개의 댓글

관련 채용 정보