this vs this()

2023. 4. 24. 22:09

💡 참조변수 this

➡️ 인스턴스 자신을 가리키는 참조변수 

➡️ 인스턴스 메서드(생성자 포함)에서 사용가능

: this는 객체가 생성되어야 사용 가능하기 때문에 클래스 메서드에서는 this 사용할 수 없음

➡️ 지역 변수와 인스턴스 변수를 구별할 때 사용 

 

 

💡 this()

➡️ 생성자에서 다른 생성자 호출할 때 사용 
: 코드의 중복을 제거하기 위해서 

➡️ 다른 생성자 호출시 첫 줄에서만 사용가능

class Car {
	String color;
  String gearType;
  int door;

Car() { // 기본값으로 아래의 값을 넣어주어라 근데 아래의 다른 생성자와 중복되는 코드 
	color = "white";
	gearType = "auto";
	door = 4;
}

Car(String c, String g, int door) {
	color = c;
	gearType = g;
	door = d;
}

--------------------------------

Car() { // 이렇게 바꿔주면 중복되는 코드가 사라진다.
	this.("white", "auto", 4);
	//Car("white", "auto", 4);
}