인터페이스 이해
package ch08.sec02;
//인터페이스
public interface RemotControl {
int MAX_VOLUME = 10;
int MIN_VOLUME = 0;
public void turnOn();
void turnOff();
void setVolume(int volume);
}
package ch08.sec02;
public class Audio implements RemotControl {
private int volume;
@Override
public void turnOn() {
System.out.println("Audio turns on");
}
@Override
public void turnOff() {
System.out.println("Audio turns off");
}
@Override
public void setVolume(int volume) {
if(volume>RemotControl.MAX_VOLUME){
this.volume = RemotControl.MAX_VOLUME;
} else if (volume < RemotControl.MIN_VOLUME) {
this.volume = RemotControl.MIN_VOLUME;
}else {
this.volume = volume;
}
System.out.println("current volume: "+volume);
}
}
package ch08.sec02;
public class RemoteControlExample {
public static void main(String() args) {
RemotControl rc;
rc = new Television();
rc.turnOn();
rc.turnOff();
rc.setVolume(7);
rc = new Audio();
rc.turnOn();
rc.turnOff();
rc.setVolume(14);
}
}
———-중요한———-
여기서 질문이 있는데 10을 상수로 설정하고 10을 초과하면 상수 10을 이렇게 설정합니다.
14를 입력하면 14가 그대로 안나오는데…?
왜? 채팅 GPT에 물어보니 이런 답변이 나왔다.