Default Method
Java8 이전까지 Interface의 추상 메소드는 반드시 클래스에서 구현해야 하고, Interface에 새로운 메소드가 추가되면, 구현 클래스를 반드시 수정해야하는 바이너리 호환성에 이슈가 생길 수 있었다. 하지만 Java8 이후에는 Interface에 default method를 생성하게 되면 Interface 내에서 구현이 가능하고 구현 클래스에서 반드시 수정할 필요가 없다. 즉, default 메소드는 구현하는 모든 클래스들이 동일한 기능을 사용할 수 있도록 하면서 Interface에 변경이 생기더라도 바이너리 호환성을 유지할 수 있게 되었다.
Static Method
Interface에서 static method 사용이 가능해졌다. Factory method를 Interface의 static method로 구현을 한다. 자세한 내용은 자주 사용되는 design pattern 중 하나인 Factory method pattern을 공부하면 이해하기 쉬울 것이라 생각이 든다.
[ TestInterface ]
[ TestClass ]
[ Result ]
'프로그래밍 기초 > JAVA' 카테고리의 다른 글
[Java8] 함수형 프로그래밍 (0) | 2017.06.20 |
---|---|
쿠키와 세션, 캐시 (0) | 2016.10.26 |
서블릿(Servlet)이란? (0) | 2016.10.26 |
interface와 abstract class의 차이 (0) | 2016.10.26 |
댓글