디폴트 메소드와 인터페이스 확장

2022. 4. 19. 22:28java/java

 *인터페이스 개념에 맞지않는 디폴트 메소드

     1)인터페이스 개념 

      -객체사용방법(메소드 호출 방법)을 기술한 타입이다.

      -따라서 메소드 선언부만 있으면 된다.

     2)실행 내용을 가지고 있는 디폴트 메소드(자바8부터 허용)

      -인터페이스에 선언은 되지만, 인터페이스만으로 사용이 불가하다.

      -구현 객체의 인스턴스 메소드이다.

 

 

   2)디폴트 메소드의 필요성

     1)기존 인터페이스에 추상 메소드를 추가할 수 없다.

        -기존 인터페이스에 추상 메소드를 추가하면 기존 구현 클래스들이 모두 에러난다. 

     2)디폴트 메소드는 추상 메소드가 아니다.

        -디폴트 메소드를 추가하더라도 기존 구현 클래스들은 문제 없이 사용할 수 있다.

        -디폴트 메소드를 재정의하는 새로운 구현 클래스를 만들 수 있다.

 

'java > java' 카테고리의 다른 글

중첩 클래스  (0) 2022.04.21
중첩 클래스와 중첩 인터페이스란?  (0) 2022.04.20
인터페이스 상속  (0) 2022.04.19
인터페이스의 다형성  (0) 2022.04.19
인터페이스 구현(2)  (0) 2022.04.15