반응형
두 문장을 하나로 줄이면
Tv t = new Tv();로 쓸 수 있다.
1. 클래스 생성(설계도)
2. 객체 생성(제품)
3. 객체 사용(변수,메서드 사용)
class Ex6_1 {
public static void main(String args[]) {
Tv t; // Tv인스턴스를 참조하기 위한 변수 t를 선언
t = new Tv(); // Tv인스턴스를 생성한다.
t.color = "레드"; // Tv인스턴스의 멤버변수 color의 값을 레드로 한다.
t.channel = 7; // Tv인스턴스의 멤버변수 channel의 값을 7로 한다.
t.channelDown(); // Tv인스턴스의 메서드 channelDown()을 호출한다.
System.out.println("현재 채널은 " + t.channel + " 입니다.");
}
}
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_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로 변경하였습니다.");
t2 = t1; // 참조변수 t1의 값을 t2에 저장.
System.out.println("t1의 channel값은 " + t1.channel + "입니다.");
System.out.println("t2의 channel값은 " + t2.channel + "입니다.");
}
}
반응형
'java↗' 카테고리의 다른 글
java↗7-5. 클래스의 정의 (0) | 2024.03.24 |
---|---|
java↗7-4. 객체 배열 (0) | 2024.03.24 |
java↗7-2. 한파일 여러 클래스 작성하기 (0) | 2024.03.24 |
java↗7. 객체지향 언어(공부순서) (0) | 2024.03.22 |
java↗6-8. Arrays로 배열 다루기 (0) | 2024.03.22 |