[java] 인터페이스의 재정의 기능 활용하기

자바에서는 인터페이스를 사용하여 클래스 간에 구조를 표준화할 수 있습니다. 인터페이스를 구현하는 클래스는 인터페이스의 모든 메서드를 구현해야 합니다. 하지만, 자바 8부터는 디폴트 메서드를 활용하여 인터페이스의 메서드를 재정의할 수 있는 기능을 제공합니다.

디폴트 메서드란?

디폼트 메서드는 인터페이스에 기본적으로 구현이 되어 있는 메서드로, 해당 인터페이스를 구현하는 클래스에서 재정의할 수 있습니다.

아래는 간단한 예제입니다.

public interface Greeting {
    default void greet() {
        System.out.println("Hello!");
    }
}

public class GreetingImpl implements Greeting {
    public void greet() {
        System.out.println("Bonjour!");
    }
}

위 예제에서 Greeting 인터페이스의 greet 메서드는 디폴트 메서드로 정의되어 있고, GreetingImpl 클래스에서는 해당 메서드를 재정의하고 있습니다.

디폴트 메서드 활용

디폴트 메서드를 활용하면, 기존의 인터페이스를 수정하지 않고도 새로운 기능을 추가할 수 있습니다. 또한, 기존의 코드를 변경하지 않고도 새로운 기능을 호출할 수 있어 유용합니다.

하지만, 디폴트 메서드를 사용할 때는 다중 상속과 관련된 주의 사항이 있으므로, 신중하게 활용해야 합니다.

이처럼 자바의 디폴트 메서드를 활용하면, 인터페이스를 보다 유연하게 활용할 수 있으며, 기존 코드의 수정 없이 새로운 기능을 추가할 수 있습니다.

참고 자료