7-4는 쉬운 문제라
(멤버 변수를 클래스 외부에서 접근 못하게 하고->private
멤버 변수들의 값을 읽고 쓰는 getter setter 메소드 만들기)
7-4를 바탕으로 한
7-5번을 풀어보았다
Q) 연습문제 7-4에서 작성한 MyTv클래스에
이전 채널(previous channel)로 이동하는 기능의 메소드를 추가해서
실행 결과와 같은 결과를 얻도록 하시오
메소드명 : gotoPrevChannel
기능 : 현재 채널을 이전 채널로 변경한다
반환 타입 : 없음
매개 변수 : 없음
<실행 결과>
CH : 10
CH : 20
CH : 10
CH : 20
풀이
package excercise7_4;
class MyTv {
private boolean isPowerOn;
private int channel;
private int volume;
private int c;
private int save;
final int MAX_VOLUME = 100;
final int MIN_VOLUME = 0;
final int MAX_CHANNEL = 100;
final int MIN_CHANNEL = 1;
public boolean isPowerOn() {
return isPowerOn;
}
public void setPowerOn(boolean powerOn) {
isPowerOn = powerOn;
}
public int getChannel() {
return channel;
}
public int getVolume() {
return volume;
}
public void setVolume(int volume) {
this.volume = volume;
}
public void setChannel(int channel) {
save = this.channel; //채널이 가지고 있는 값을 save에 넣음(이전 채널 저장 장소)
this.channel = channel; //새로운 채널을 입력 받음
}
public void gotoPerChannel() {
c = this.channel; //지금 채널을 c로 넣음
this.channel = save; //이전 채널을 새로 저장
save=c; //지금 채널은 save에 저장
}
}
public class Excercise7_4 {
public static void main(String[] args) {
MyTv t = new MyTv();
t.setChannel(10);
System.out.println("CH : "+t.getChannel());
t.setChannel(20);
System.out.println("CH : "+t.getChannel());
t.gotoPerChannel();
System.out.println("CH : "+t.getChannel());
t.gotoPerChannel();
System.out.println("CH : "+t.getChannel());
}
}
실행 결과
저는 벌레입니다
728x90
'문제를 풀어보자' 카테고리의 다른 글
JAVA) 자바의 정석 기초편 11-4 연습 문제(Comparator 정렬) (0) | 2022.10.14 |
---|---|
JAVA) 자바의 정석 기초편 11-3 연습 문제(Comparable 정렬) (1) | 2022.10.13 |
JAVA) 자바의 정석 기초편 7-2 연습문제 풀이 (1) | 2022.10.09 |
JAVA) 자바의 정석 기초편 7-1 연습문제 풀이 (0) | 2022.10.09 |
JAVA) 이것이 자바다 챕터2~11 확인문제 7번~9번 (0) | 2022.10.07 |