인프런 강의 "더 자바, JAVA8"(백기선님)의 강의를 듣고 정리한 글 입니다.
JAVA8에 추가된 핵심 기능들을 이해하기 쉽게 설명해 주시니 한번씩 들어보시는 것을 추천드립니다.
인터페이스를 작성했습니다.
public interface MyInterface {
void printName();
}
MyFoo 클래스는 해당 인터페이스를 구현하고 있습니다.
public class MyFoo implements MyInterface{
@Override
public void printName() {
System.out.println("myFoo = " + "myFoo");
}
}
여기서 인터페이스에 새로운 메서드가 추가된다면 ?
public interface MyInterface {
void printName();
void printNameUppercase(); // 추가
}
이 인터페이스를 구현하는 모든 클래스들을 고쳐야 합니다.
구현한 클래스를 고치지 않고 인터페이스에 메서드를 추가하는 방법은 아래와 같습니다.
public interface MyInterface {
void printName();
default void printNameUppercase() {
System.out.println("printNameUppercase");
};
}