[JAVA] this() vs this 차이점
생성자 this()
- 생성자에서 다른 생성자 호출할 때 사용
- 다른 생성자 호출시 첫줄에서만 사용가능
- 생성자 호출시에는 생성자 명이 아닌 this로 호출
- 목적은 코드의 중복을 방지하기 위함
class car2{
String color;
Sting gearType;
int door;
car2(){
//디폴트 값을 지정해줌
this(“white”,”auto”,4);
}
car2(String color){
this(color,”auto”,4);
}
car2(String, String gearType,int door){
this.color=color;
this.gearType = gearType;
this.door=door;
}
}
참조변수 this
- 인스턴스 자신을 가리키는 참조변수
- 인스턴스 메서드(생성자 포함)에서 사용가능
- 지역변수와 인스턴스 변수를 구별할 때 사용
//지역변수와 인스턴스 변수가 명이 같은 경우 구분을 위해 this 붙인다.
Car(String color, String gearType, int door){
this.color = color;
this.gearType = gearType;
this.door = door;
}
더보기
This : 인스턴스 자신을 가리키는 참조변수, 인스턴스의 주소가 저장되어 있다. 모든 인스턴스메서드에 지역변수로 숨겨진채 존재
this(), this(매개변수) 생성자같은 클래스의 다른 생성자를 호출할 때 사용한다.
=> 이 둘은 완전히 다른 것이다. 참조변수와 생성자의 차이!
Static 메서드에서는 사용불가!
'Language > JAVA' 카테고리의 다른 글
[JAVA] 상속관계와 포함관계 (0) | 2022.03.16 |
---|---|
[JAVA] 생성자 특징 (기본 생성자) (0) | 2022.03.15 |
[JAVA] 배열 (Array) 다루기 (0) | 2022.03.15 |
[JAVA 복습] 접근 제어자 (Access Modifier) 와 캡슐화 (0) | 2022.02.10 |
[TIL] 컬렉션 - java.util.Queue<E> 인터페이스 & 구현클래스 (0) | 2020.09.08 |
댓글