본문 바로가기
study/Java

[Java] 21. this 예약어

by 금이패런츠 2022. 3. 18.
728x90
반응형
package chap6;
/*
 * == this 예약어 ==
 * this() 생성자  : 클래스 내부에 다른 생성자 호출시 사용
 *                첫줄에 구현해야함.
 * this   참조변수 : 자기참조변수. 객체자신의 참조값을 저장하는 변수
 *                인스턴스멤버만 사용가능. 인스턴스메서드의 지역변수로 자동 설정됨. 
 *                같은 이름의 멤버변수와 지역변수 구분시 사용.
 *                this.인스턴스멤버명
 */
class Car4 {
	String color; //멤버변수
	int number;   //멤버변수
	int serialNo; //멤버변수
	static int sno;
	Car4() {
		this("white",1000); //매개변수(String, int) 다른 생성자 호출
		System.out.println("Car4()생성자 호출");
//		this("white",1000); //첫줄에 구현해야함.
	}
	Car4(String color, int number) { //지역변수
		System.out.println("Car4(String,int)생성자 호출");
		this.color = color;   //멤버변수와 지역변수가 같은 이름일때 구분시 사용
		this.number = number;
		serialNo = ++sno;     //같은 이름이 없을시 생략가능
	}
	public String toString() {
		return serialNo + "번자동차 : " + this.color + "," + this.number;
	}
}
public class ThisEx1 {
	public static void main(String[] args) {
		Car4 c1 = new Car4("blue",1234);
		Car4 c2 = new Car4();
		System.out.println(c1);
		System.out.println(c2);
	}
}
728x90
반응형