JAVA

객체지향 객체의 생성과 사용

연93 2022. 9. 24. 15:35

클래스작성 -> 객체생성 -> 객체사용 (변수 ,메서드)

package javachap06;

public class Ex6_1 {

	public static void main(String[] args) {
		Tv t;
		t = new Tv();
		t.channel = 7;		//객체를 사용한다는건 객체 멤버를 사용하는것
		t.channelDown();
		System.out.println("현재 채널은 " + t.channel + "입니다");
	}
}

class Tv{
	// Tv의 속성(멤버변수)
	String color;   // 색상
	boolean power;  // 전원상태
	int channel;    // 채널
	
	//Tv의 기능(메서드)
	void power() { power = !power;} //Tv를 켜거나 끄는 기능을 하는 메소드
	void channelUp() { ++channel; } // 채널을 높이는 기능
	void channelDown() { --channel; } //채널다운
}

서로 다른 주소를 갖는다

package javachap06;

public class Ex6_2 {

	public static void main(String[] args) {
		Tv t1 = new Tv(); // Tv t1; t1 = new Tv();를 한 문장으로 가능
		Tv t2 = new Tv();
		System.out.println("t1의 channel값은" + t1.channel + "입니다");
		System.out.println("t2의 channel값은" + t2.channel + "입니다");
		
		t1.channel = 7;
		System.out.println("t1의 channel값을 7로 변경하였습니다.");
		
		t2 = t1; // 참조변수 t1의 값을 t2에 저장.
		System.out.println("t1의 channel값은" + t1.channel + "입니다.");
		System.out.println("t2의 channel값은" + t2.channel + "입니다.");
	}
}
------------------------------------------------------------------------------
t1의 channel값은0입니다
t2의 channel값은0입니다
t1의 channel값을 7로 변경하였습니다.
t1의 channel값은7입니다.
t2의 channel값은7입니다.

'JAVA' 카테고리의 다른 글

객체지향 선언 위치에 따른 변수의 종류  (0) 2022.09.24
객체지향 객체 배열  (0) 2022.09.24
super 코드 정리  (0) 2022.09.14
Overriding 코드 정리  (0) 2022.09.14
final  (0) 2022.09.13