인터페이스의 여러가지 요소
1. 상수
- 모든 변수는 상수로 변환됨 public static final (생략 가능)
double PI = 3.14;
int ERROR = -9999999999;
2. 추상메서드
- 모든 선언된 메서드는 추상 메서드 public abstract
3. 디폴트 메서드 (자바 8이후)
- 구현을 가지는 메서드, 인터페이스를 구현하는 클래스들에서 공통으로 사용할 수 있는 메서드
- default 키워드 사용
defalult void description() {
System.out.println("정수 계산기를 구현 합니다.");
myMethod();
}
- 구현 하는 클래스에서 재정의 할 수 있음
@Override
public void description() {
System.out.println("CompleteCalc에서 재정의한 default 메서드");
}
4. 정적 메서드 (자바 8이후)
- 인스턴스 생성과 상관 없이 인터페이스 타입으로 사용 할 수 있는 메서드
static int total(int[] arr) {
int total = 0;
for(int num : arr) {
total += num;
}
return total;
}
5. private 메서드 (자바 9이후)
- 인터페이스를 구현한 클래스에서 사용하거나 재정의 할 수 있음
- 인터페이스를 내부에서만 사용하기 위해 구현 하는 메서드
- default 메서드나 static 메서드에서 사용함
private void myMethod() {
System.out.println("private method");
}
private static void mystaticMethod() {
System.out.println("private static method");
}'JAVA' 카테고리의 다른 글
| [JAVA] Objact 클래스 - 모든 클래스의 최상위 클래스 (1) | 2023.08.13 |
|---|---|
| [JAVA] 여러 인터페이스 구현하기, 인터페이스의 상속 (1) | 2023.08.09 |
| [JAVA] 구현 코드가 없는 인터페이스 (0) | 2023.08.01 |
| [JAVA] 추상 클래스의 응용 - 템플릿 메서드 패턴 (0) | 2023.07.30 |
| [JAVA] 추상 클래스의 의미와 구현하는 방법 (0) | 2023.07.30 |