Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java 9의 인터페이스에 개인 메소드가 필요한 이유는 무엇입니까?


인터페이스가 기본값 을 지원합니다. 방법 자바 8 버전부터. 때때로 이러한 기본 메서드에는 여러 메서드에서 공통적으로 사용할 수 있는 코드가 포함될 수 있습니다. 이러한 상황에서 우리는 다른 기본 메소드를 작성하고 코드 를 만들 수 있습니다. 재사용성 . 일반 코드가 기밀인 경우 그런 다음 해당 인터페이스를 구현하는 모든 클래스가 모든 기본 메서드에 액세스할 수 있으므로 기본 메서드에 유지하는 것은 바람직하지 않습니다.

인터페이스는비공개 메소드를 가질 수 있습니다. 자바 9 이후 버전. 이러한 메소드는 클래스/인터페이스 내에서만 볼 수 있습니다. , 따라서 기밀 을 위해 비공개 방법을 사용하는 것이 좋습니다. 코드 . 이것이 인터페이스에 private 메소드를 추가한 이유입니다.

구문

private void methodName() {
   // some statementscode
}

예시

interface Operation {
   default void addition() {
      System.out.println("default method addition");
   }
   default void multiply() {
      division();
      System.out.println("default method multiply");
   }
   private void division() {         // private method
      System.out.println("private method division");
   }
}

class PrivateMethodTest implements Operation {
   public static void main(String args[]) {
      PrivateMethodTest test = new PrivateMethodTest();
      test.multiply();
   }
}

출력

private method division
default method multiply