functional Interface, default method 언제 사용하고 왜 등장했는가
기존의 구현을 고치지 않고도 이미 공개된 인터페이스를 변경할 방법은 없을까?의 아이디어에서 발생
즉, default method는 구현체에서 반드시 구현하지 않아도 되는 메서드를 인터페이스에서 구현해둘수가 있게 되었다. 구현체가 로드될때는 인터페이스에 default키워드가 붙어 있는 메서드가 로드되면서 컴파일시에도 아무 문제없이 실행이 가능하다.
즉, 기존의 코드를 최대한 수정하지 않으면서 설계된 인터페이스에 새로운 확장을 가능하게 만들기 위해서 등장한 기술이다.
자바 8에서 등장한 Default Method는 인터페이스에서 구현 메소드를 가질 수 있게 해주는 기능입니다. 이 기능은 기존에 존재하던 인터페이스의 메소드 시그니처를 변경하지 않고 새로운 기능을 추가할 수 있는 장점이 있습니다.
Default Method의 등장 이유는 다음과 같습니다.
Default Method를 사용해야 하는 경우는 다음과 같습니다.
Default Method의 장점은 다음과 같습니다.