프로그래밍 언어/JAVA(자바) 응용

34.인터페이스의 여러가지 요소

lroot 2022. 5. 25. 13:45
728x90
반응형

상수

- 모든 변수는 상수로 변환 됨 public static final

double PI = 3.14;

int ERROR = -999999;

 

추상 메서드

- 모든 선언된 메서드는 추상 메서드 public absract

 

디폴트 메서드 (자바 8이후)

- 구현을 가지는 메섣, 인터페이스를 구현하는 클래스들에서 공통으로 사용할 수 있는 기본 메서드

- default 키워드 사용

default void description() {

  System.out.println("정수 계산기를 구현합니다");

  myMethod();

}

- 구현하는 클래스에서 재정의할 수 있음

@Override

public void description() {

  System.out.println("CompleteCalc에서 재정의한 default 메서드");

  // super.description();

}

- 인터페이스를 구현한 클래스의 인스턴스가 생성되어야 사용 가능함

 

정적 메서드 (자바 8이후)

- 인스턴스 생성과 상관없이 인터페이스 타입으로 사용할 수 있는 메서드

static int total(int[] arr) {

  int total = 0;

  

  for(int i : arr) {

  total += 1;

}

  mystaticMethod();

  return total;

}

 

private 메서드 (자바 9이후)

- 인터페이스를 구현한 클래스에서 사용하거나 재정의 할 수 없음

- 인터페이스 내부에서만 사용하기 위해 구현하는 메서드

private void myMethod() {

System.out.println("private method") {

}  

private static void mystaticMethod() {

  System.out.println("private static mehtod");

}