어 블로그를 보다보니 callback 구현하는데 2가지 방법이 있는데 그 중 하나가 인터페이스라고 하였습니다.
하지만 interface를 어떻게 구현하고 사용하는지 몰라서 이해를 못하다가 그냥 callback과 별도로 이것부터 집고 넘어가기록 했습니다.
책에서 소개된 인터페이스는
'죽음의 다이아몬드 때문에 생기는 부작용들을 다중 상속의 다형적인 장점으로 다중상속문제를 해결해준다고 합니다.
인터페이스에 대해서 쉽게 이야기를 하자면,
인터페이스는 보통 클래스에 public과 abstrac가 붙은 형태입니다.
따라서 interface로 구현된 함수들은 extends한 클래스에서 재정의하여 사용해야 합니다.
인터페이스를 정의하는 방법은 아래와 같습니다.
public interface Cup {...}
인터페이스를 구현하는 방법은 아래와 같습니다.
public class Glass implements Cup {...}
자세히 구현해보면,
interface의 선언은 아래와 같이 하고,
pubilc interface Cup {
public abstract void wash();
public abstract void made();
}
(책에선 함수에 있는 public abstract을 쓰는것을 추천하지 않았어요, 저도 이해하기 편하게 하기 위해서 적은것입니다)
public class Glass impolements Cup {
public wash() {
....
}
public made() {
....
}
}
이렇게 구현하면 됩니다.
'소프트웨어 > Java' 카테고리의 다른 글
java에서 public final class란? (0) | 2015.01.14 |
---|---|
java/자바 에서 call back에 대해서 공부해보기 -1 (0) | 2015.01.07 |
java - jni로 hello world 출력하기 (0) | 2014.11.13 |
java 설치 후 명령어가 안될때 - 우분투(ubuntu 14.04) (0) | 2014.11.12 |
Java home 설정하는 방법 - ubuntu 14.04 (0) | 2014.11.12 |