2014년 1월 5일 일요일

[7-11] [7-10]에 이전 채널로 이동하는 메서드 추가

// 7-10 문제에서 이전 채널로 이동하는 기능의 메서드를 추가하라.

class MyTv2 {
private boolean isPowerOn;
private int channel;
private int volume;
private int preChannel; // 이전 채널을 저장하는 멤버변수

final int MAX_VOLUME = 100;
final int MIN_VOLUME = 0;
final int MAX_CHANNEL = 100;
final int MIN_CHANNEL = 1;

public void setChannel(int channel) {
if(channel <= MAX_CHANNEL && channel >= MIN_CHANNEL) {// 유효성검사
preChannel = this.channel; // 현재 채널을 이전 채널에 저장한다.
this.channel = channel;
}
else
return;


}

public int getChannel() {
return channel;
}

public void setVolume(int volume) {
if(volume <= MAX_VOLUME && volume >= MIN_VOLUME) // 유효성검사
this.volume = volume;
else
return;
}

public int getVolume() {
return volume;
}

public void gotoPreChannel() {
setChannel(preChannel); // 현재 체널을 이전 채널로 변경한다.
}
}
class Exercise7_11 {
public static void main(String[] args) {
MyTv2 t = new MyTv2();

t.setChannel(10);
System.out.println("CH: "+t.getChannel() );
t.setChannel(20);
System.out.println("CH: "+t.getChannel() );
t.gotoPreChannel();
System.out.println("CH: "+t.getChannel() );
t.gotoPreChannel();
System.out.println("CH: "+t.getChannel() );

}
}

댓글 없음:

댓글 쓰기