인터페이스 이해
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가 나오는거 아닌가...?
왜 그렇지? 챗 지피티한테 물어보니 이렇게 답변이 나왔다.
'나혼자공부시간(평일저녁,주말,휴일때)' 카테고리의 다른 글
자바스크립트 객체(오늘 객체실습 이해 하나도 못했음..;; 꼭 집에서 객체파트 이해하고 넘어가자) (0) | 2023.03.30 |
---|---|
자바초보(별모양 트리만들기:이중반복문:Nested loops) (0) | 2023.03.29 |
메소드 호출,선언:개념 제대로 알고 가기/지역변수,전역변수,정적변수 차이점 (0) | 2023.03.20 |
1주일째(주말):for, while, Do while 반복문 (1) | 2023.03.12 |
1주일차(주말): 자바 문자열, if 수식 등 (0) | 2023.03.11 |