인터페이스의 역할

인터페이스 선언법

클래스와 같은 네이밍 규칙을 사용하고, .java 파일로 생성하면 된다.

[ public ] interface 인터페이스명 { ... }

인터페이스의 구성요소

상수(static final)

인터페이스는 아직 구현체가 없으므로, 인스턴스화가 불가능하다. 그러므로, 인스턴스 필드도 사용 불가능하다. 하지만, 상수 필드는 선언 가능하다. 상수 선언 시에는 반드시 초기값을 대입해야 한다.

상수 필드 선언

인터페이스에서 선언하는 필드는 따로 설정하지 않아도 public static final 키워드가 붙어 자연적으로 상수 필드가 된다.

네이밍 규칙은 일반적인 상수 네이밍과 동일하다.

인터페이스 상수는 static { ... } 블록으로 초기화할 수 없기 때문에, 초기 값이 반드시 들어가야 한다.

public interface RemoteControl {
  int MAX_VOLUME = 10;
  int MIN_VOLUME = 0;
}

인터페이스 필드에 위와 같이만 선언해도 public static final이 자동으로 붙은 효과를 내어 상수가 된다.

메소드

추상 메소드