-
[INTERFACE] INTERFACEJava-diary 2020. 2. 9. 23:43
정의
- 동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 것
- 자바의 다형성을 극대화하여 개발코드 수정을 줄이고 프로그램 유지보수성을 높이고자 사용
*다중 상속
하위 클래스 하나가 상위 클래스 여러개와 연결되어 상위 클래스들의 기능을 하위 클래스에서 사용할 수 있도록
만드는 것
특징
- 상수와 abstracts method로만 이루어져 있다. -method body가 없다.-
- method는 public abstracts여야만 한다.
- 멤버변수는 public static final이여야만 한다.
- interface class 선언 시 public으로 선언하는 것이 일반적이다.
- interface는 interface로만 상속받을 수 있으며 일반 class와 달리 다중 상속이 가능하다.
*상수와 abstracts method
상수 인터페이스에서 값을 정해주니 제공하는 값만 참조할 것 추상 메소드 가이드만 줄테니 추상 메소드를 오버라이딩해서 구현할 것 디폴트 메소드 인터페이스에서 기본적으로 제공해주지만 맘에 안들면 각자 구현할 것 (선택적) 정적메소드 인터페이스에서 제공해주는 것으로 무조건 사용할 것 특정 Class의 Member 필드로 Interface 사용하기
Interface를 구현한 자식 class로 Interface를 instance한다.
'Java-diary' 카테고리의 다른 글
[INTERFACE] Runnable Interface (0) 2020.03.15 [완성도-1단계]JAVA/JVM (0) 2020.02.04