18일 차 - this 생성자 (23.01.18)

yvonne·2023년 1월 18일
0

📂Java

목록 보기
18/51
post-thumbnail

1. 아래가 컴파일 되도록 하시오.

	TV tv = new TV(10,"blue");
	TV tv2 = new TV(20,"blue");
		
	System.out.println(tv.getSize() + "인치 입니다");
	System.out.println(tv.getColor() + "색 입니다");
		
	tv.show(); // 10 인치 bule 색 입니다.		
	tv.compareSize(tv); //  내가 작습니다.		
	tv2.compareSize(tv); // 내가 큽니다.

class TV {
	int size;
	String color;

	TV(int size, String color) { // 생성자 함수
		this.size = size;
		this.color = color;
	}

	int getSize() {
		return this.size;
	}

	String getColor() {
		return this.color;
	}

	void compareSize(TV tv) {
		if (this.size > tv.size) {
			System.out.println("내가 큽니다.");
		} else if (this.size == tv.size) {
			System.out.println("나랑 같습니다.");
		} else {
			System.out.println("내가 작습니다.");
		}
	}

	void show() {
		System.out.println(this.size + "인치 " + this.color + "색 입니다.");
	}
}

public class tvtest {
	public static void main(String[] args) {

		TV tv = new TV(10, "blue");
		TV tv2 = new TV(20, "blue");

		tv.compareSize(tv2); // 내가 작습니다.
		tv2.compareSize(tv); // 내가 큽니다.
		tv.compareSize(tv);

		System.out.println(tv.getSize() + "인치 입니다.");
		System.out.println(tv.getColor() + "색입니다.");
		tv.show();

	}
}
  • 출력결과






2. this 생성자에 대하여 설명하시오.

  • this : 현재 클래스의 인스턴스를 의미하며, 현재 클래스의 맴버변수 (field) 를 지정할때 사용한다.

📌 This의 역할

  • 자기 자신의 메모리를 가리키는 역할을 한다.
  • 생성자에서 다른 생성자를 호출 하는 역할을 한다
  • 인스턴스가 자기 자신의 주소를 반환할 때 사용한다




3. 1번에서 tv.compareSize(tv); 에 대하여, 메모리 그림을 그리시오.

profile
개발 연습장

0개의 댓글