OOP-10 : 생성자 this()와 참조변수 this

이의준·2024년 5월 28일

Java

목록 보기
31/87

생성자 this()

  • 생성자에서 다른 생성자 호출할 때 사용
  • 다른 생성자 호출시 첫 줄에서만 사용 가능
class Car2 {
    String color;
    String gearType;
    int door;

    Car2() {
        this("white", "auto", 4);
    }

    Car2(String color) {
        this(color, "auto", 4);
    }

    Car2(String color, String gearType, int door) {
        this.color = color;
        this.gearType = gearType;
        this.door = door;
    }
}

참조변수 this

  • 인스턴스 자신을 가리키는 참조변수
  • 인스턴스 메서드(생성자 포함)에서 사용 가능
  • 지역변수(LV)와 인스턴스 변수(IV)를 구변할 때 사용
Car(String c, String g, int d) {
	color = c;
    gearType = g;
    door = d;
}

위 코드에서는 this 생략 가능

Car(String color, String gearType, int door) {
	this.color = color;
    this.gearType = gearType;
    this.door = door;
}

위 코드에서는 생성자의 매개변수와 인스턴스 변수 이름이 같기 때문에 this로 구분


참조변수 this와 생성자 this()

  • this : 인스턴스 자신을 가리키는 참조변수. 인스턴스의 주소가 저장되어 있음. 모든 인스턴스메서드에 지역변수로 숨겨진 채로 존재
  • this(), this(매개변수) : 생성자. 같은 클래스의 다른 생성자를 호출할 때 사용 (클래스 이름 대신 this())

0개의 댓글