[Java] 인터페이스와 default 메서드
·
Java/Base
인터페이스 (Interface) - 구현된 것이 아무 것도 없는, 밑그림만 있는 기본 설계도 - 기능 중심 설계 : 클래스/프로그램이 제공하는 기능을 명시적으로 선언함 - 표준 : 기능을 정의해두면, 어떤 클래스든 가져와서 사용할 수 있음 - 클라이언트 코드와의 약속 (강제성이 있는 약속) - 클래스/프로그램이 제공하는 명세 - 구현하는 클래스가 어떤 메서드를 반드시 구현해야 하는지를 지시함 → 모든 클래스는 인터페이스의 모든 메서드를 구현해야 함 - 추상 클래스보다 추상화 정도가 더 높음 → 더 유연하게 코드 설계 가능# 인터페이스 정의 - 인터페이스는 멤버 변수를 가질 수 없고, 상수만을 가질 수 있음 - 인터페이스는 일반 메서드를 가질 수 없고, 추상 메..