본문 바로가기
개발 관련 지식/JAVA

인터페이스에서 디폴트 메소드

by 권태일1147 2020. 4. 2.

최초에 A라는 인터페이스가 있었다고 가정을 하자. A 인터페이스를 구현하는 B 클래스에서 A 인터페이스의 추상 메소드를 구현해놨다. 나중에 A 인터페이스에 새로운 기능을 추가해야 해서 새로운 추상 메소드를 선언했다. 근데 B 클래스에서 추가된 추상메소드를 구현할 여건이 안된다면, 에러가 발생할 것이다. 이럴 때 디폴트 메소드를 선언한다. A 인터페이스에 있는 디폴트 메소드는 B 구현 클래스에서 반드시 구현할 필요가 없기 때문에 B 클래스를 문제 없이 사용이 가능하다. 물론 C라는 구현 클래스가 추가 된다면 추상메소드를 반드시 구현해야하지만, 새로운 기능인 디폴트 메소드를 A 인터페이스에 선언한대로 사용해도 되고, 재정의해서 사용해도 된다.

 

 

'개발 관련 지식 > JAVA' 카테고리의 다른 글

멀티 스레드 개념  (0) 2020.04.04
예외 처리  (0) 2020.04.03
인터페이스 상속  (0) 2020.04.02
인터페이스 타입변환과 다형성  (0) 2020.04.02
인터페이스  (0) 2020.04.01