인터페이스
- 추상 메서드의 집합이다
- 구현된 것이 전혀 없는 설계도이다(껍데기)
- 모든 멤버가 public이다
- 상수 이외의 인스턴스 변수, 클래스 변수는 가질 수 없다
- 인터페이스의 추상 메서드에서 public abstract는 생략 가능
- 상수에서는 public static final중 일부 또는 전부 생략 가능
- 추상 메서드와 인터페이스의 차이점
추상 메서드 : 일반 클래스인데 추상 메서드를 가지고 있는 클래스
인터페이스 : 구현된게 아무것도 없는 그냥 추상 메서드들만 쭈욱 적어 놓은 것

interface 인터페이스이름 {
public static final 타입 상수이름 = 값; // 상수
public abstract 메서드이름(매개변수목록); // 추상 메서드
}
인터페이스 형태
인터페이스의 상속
- 인터페이스의 조상은 인터페이스만 가능하다
- 인터페이스는 클래스처럼 Object가 최고 조상이 아니다
- 추상 메서드는 어차피 상속 받으면서 구현부를 작성하기 때문에 충돌해도 상관 없다
따라서, 다중 상속이 가능하다
인터페이스의 구현
- 인터페이스에 정의된 추상 메서드를 완성하는 것
class 클래스이름implements인터페이스이름 {...}