일종의 추상 클래스
몸통을 갖춘 일반 메서드 or 멤버변수를 가질수 없다
오직 추상메서드와 상수만ㅇ르 멤버로 가질 수 있다.
인터페이스의 상속은 인터페이스 사이에서만 가능하며 클래스와 달리 다중상속이 가능하다.
extends대신 implements를 사용하면 된다.
implements를 받는 class들은 반드시 인터페이스의 모든 메서드를 구현해야 한다.
구현 하지 않을시에는 class에 abstract를 추가해준다
인터페이스 또한 자손클래스의 인스턴스를 조상타입의 참조변수로 참조하는것이 가능하다.
-> 인터페이스 또한 메서드의 매개변수로 사용 가능
리턴타입이 인터페이스라는 것은 메서드가 해당 인터페이스를 구현한 클래스의 인스턴스를 반환한다는 것을 의미
388p 반드시 참고
5장의 다형성 부분과 동일한 내용.
장점 같은 경우에는 스스로 사용하면서 느끼고자함