인터페이스 (Interface) 프로그래밍에서의 인터페이스는 서로 다른 두 시스템, 장치, 소프트웨어를 서로 이어주는 부분 또는 접속 장치로 정의할 수 있다. 컴퓨터의 내용을 그래픽 형태로 이미지화하여 사용자와 소통할 수 있도록 연결하는 GUI(Graphic User Interface)가 인터페이스의 대표적인 예시이다. 자바의 인터페이스 또한 유사한 기능을 가지고 있으며, 추상 클래스와 함께 자바에서 추상화를 구현하는 핵심적인 역할을 담당한다. 추상 클래스에 비해 더 높은 단계의 추상성을 가지는 것이 바로 인터페이스다. 추상 클래스는 메서드 바디가 없는 추상 메서드를 하나 이상 포함하는 점 외에는 일반 클래스와 동일하다. 하지만, 인터페이스는 기본적으로 추상 메서드와 상수(static 변수)만을 멤버로 ..