더북(TheBook)

3.1.5 인터페이스 확장


인터페이스는 또 다른 인터페이스를 확장(extend)해서 원래 있던 메서드 외의 추가 메서드를 요구하거나 제공할 수 있다. 예를 들어 Closeable은 메서드가 한 개만 있는 인터페이스다.

public interface Closeable {

    void close();

}


5장 예외, 단정, 로깅에서 알아보겠지만, Closeable은 예외가 일어날 때 리소스를 닫는 중요한 인터페이스다.

Channel 인터페이스는 Closeable 인터페이스를 확장한다.

public interface Channel extends Closeable {

    boolean isOpen();

}


Channel 인터페이스를 구현하는 클래스는 두 메서드를 모두 구현해야 하며, 두 인터페이스 타입 중 어느 것으로든 해당 클래스의 객체를 변환할 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.