-
스프링/인터페이스와 임플리먼트 사이 에러Spring/Spring Quick Start 2019. 5. 19. 13:51
인터페이스 소스와 임플리먼트한 소스에서 동일하게 이용되어야하며 이러한 규칙을 지키지 않을시에는 에러가 발생하는데 동일한 소스를 이용하지 않았으므로 따로 큰 에러가 발생하지는 않는다.
-TVUser.java 기본 클래스-
package polymorphism;
public class TVUser {
public static void main(String[] args) {
TV tv = new SamsungTV();
tv.powerOn();
tv.volumeUp();
tv.volumeDown();
tv.powerOff();
}
}-TV.java 인터페이스-
package polymorphism;
public interface TV {
public void powerOn();
public void powerOff();
public void volumeUp();
public void volumeDown();
}-SamsungTV.java 클래스-
package polymorphism;
public class SamsungTV implements TV {
public void powerOn(){
System.out.println("samsungtv on");
}
public void powerOff(){
System.out.println("samsungtv off");
}
public void volumeUp(){
System.out.println("samsungtv volumeUp");
}
public void volumeDown(){
System.out.println("samsungtv volumeDown");
}
}필자는 SamsungTV클래스와 TV클래스간에 사용되는 클래스 volumeUp()을 오타를 내서 다르게 사용하고 있었습니다.
인터페이스 이전에는 tv.voumeUp(); 이런식으로 써도 자동완성기능이 있기때문에 그래도 따로 손대지 않아도 정상적으로 작동했습니다. 초보자가 많이 하는 실수중 하나겠죠?
'Spring > Spring Quick Start' 카테고리의 다른 글
스프링퀵스타트 bean 엘리먼트 속성 (0) 2019.05.21 스프링퀵스타트 빈생성 에러 및 학습 (0) 2019.05.20 스프링 프로젝트 생성 및 설정변경 (0) 2019.04.28 Spring Tool Suite (STS) for Eclipse 3.8.4.RELEASE 설치, 문제점 발생 및 해결법 (0) 2019.04.28 H2database 1.4.197 설치 및 구동 (0) 2019.04.28 댓글