ch6-6,7 객체의 생성과 사용

ch6-6 객체의 생성과 사용

  1. 객체의 생성

클래스명 변수명 ; → 클래스의 객체를 참조하기 위한 참조변수 선언

변수명 = new 클래스명(); → 클래스의 객체를 생성 후 , 객체의 주소를 참조변수에 저장

Tv t ; → Tv 클래스 타입의 참조변수 t를 선언

t = new Tv(); → Tv인스턴스를 생성한 후 , 생성된 Tv 인스턴스의 주소를 t에 저장

→ Tv t = new Tv (); 로 합칠 수 있다.


  1. 객체의 사용
class Tv { 
	// Tv의 속성(멤버변수)   
	String color;           // 색상 
	boolean power;         	// 전원상태(on/off) 
	int channel;           	// 채널 

	// Tv의 기능(메서드) 
	void power()   { power = !power; }  // TV를 켜거나 끄는 기능을 하는 메서드  
	void channelUp()   {  ++channel; }  // TV의 채널을 높이는 기능을 하는 메서드 
	void channelDown() { --channel; }   // TV의 채널을 낮추는 기능을 하는 메서드  
}

class Ex6_1 { 
	public static void main(String args[]) { 
		Tv t;                 // Tv인스턴스를 참조하기 위한 변수 t를 선언       
		t = new Tv();         // Tv인스턴스를 생성한다. 
		t.channel = 7;        // Tv인스턴스의 멤버변수 channel의 값을 7로 한다. 
		t.channelDown();      // Tv인스턴스의 메서드 channelDown()을 호출한다. 
		System.out.println("현재 채널은 " + t.channel + " 입니다."); 
	} 
}

현재 채널은 6 입니다.
  1. 클래스 작성
  2. 객체생성
  3. 객체 사용

과정으로 이루어져 있다.

6개의 멤버를 가지고 있다.

color , power , channel 은 변수

pwoer() , channelUp() , channelDowun() 은 메서드 이다.

메서드를 사용하기 위해서는 꼭 리모콘( t ) 이 필요하다.


ch6-7 객체의 생성과 사용 - 예제

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;    // channel 값을 7으로 한다.
		System.out.println("t1의 channel값을 7로 변경하였습니다.");

		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값은 0입니다.

별도의 저장 공간이 생긴다.

좋은 웹페이지 즐겨찾기