>Java >java지도 시간 >Java 8의 기본 인터페이스 메소드와 정적 인터페이스 메소드의 차이점

Java 8의 기본 인터페이스 메소드와 정적 인터페이스 메소드의 차이점

王林
王林앞으로
2023-08-30 23:17:171264검색

Java 8中默认接口方法和静态接口方法的区别

Oracle Javadocs에 따르면 -

기본 메소드를 사용하면 라이브러리의 인터페이스에 새로운 기능을 추가하고 이러한 인터페이스의 이전 버전용으로 작성된 코드와의 바이너리 호환성을 보장할 수 있습니다.

정적 메서드는 객체가 아니라 정의된 클래스와 연결된 메서드입니다. 클래스의 각 인스턴스는 정적 메서드를 공유합니다.

인터페이스의 정적 메서드는 인터페이스의 일부이므로 클래스는 이를 구현하거나 재정의할 수 없지만 클래스는 기본 메서드를 재정의할 수 있습니다.

기본 메소드 tr>
미스터. 아니요 정적 인터페이스 메소드
1

Basic

정적 메소드는 인터페이스에만 속합니다. 인터페이스 자체에서 이 메소드의 구현을 작성할 수 있습니다.

이것은 기본 키워드가 있는 메소드이며, 클래스는 이 메소드를 재정의할 수 있습니다.

2

메소드 호출

정적 메소드 클래스가 아닌 인터페이스 클래스에서만 호출할 수 있습니다.

인터페이스나 클래스에서 호출할 수 있습니다.

3

메서드 이름

인터페이스와 구현 클래스 모두 동일한 이름의 정적 메서드를 가질 수 있지만 그럴 필요는 없습니다. 서로를 덮으십시오.

구현 클래스에서 기본 메서드를 재정의할 수 있습니다.

4.

사용 사례

유틸리티 메서드로 사용할 수 있습니다.

제공하는 데 사용할 수 있습니다. 모든 구현 클래스에서 공통 함수

인터페이스의 기본 메소드 및 정적 메소드 예시

public interface DefaultStaticExampleInterface {
   default void show() {
      System.out.println("In Java 8- default method - DefaultStaticExampleInterface");
   }
   static void display() {
      System.out.println("In DefaultStaticExampleInterface I");
   }
}
public class DefaultStaticExampleClass implements DefaultStaticExampleInterface {
}
public class Main {
   static void main(String args[]) {
      // Call interface static method on Interface
      DefaultStaticExampleInterface.display();
      DefaultStaticExampleClass defaultStaticExampleClass = new DefaultStaticExampleClass();
     
      // Call default method on Class
      defaultStaticExampleClass.show();
   }
}

위 내용은 Java 8의 기본 인터페이스 메소드와 정적 인터페이스 메소드의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제