[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
클래스에서는 해당 메서드를 재정의하고 있습니다.
디폴트 메서드 활용
디폴트 메서드를 활용하면, 기존의 인터페이스를 수정하지 않고도 새로운 기능을 추가할 수 있습니다. 또한, 기존의 코드를 변경하지 않고도 새로운 기능을 호출할 수 있어 유용합니다.
하지만, 디폴트 메서드를 사용할 때는 다중 상속과 관련된 주의 사항이 있으므로, 신중하게 활용해야 합니다.
이처럼 자바의 디폴트 메서드를 활용하면, 인터페이스를 보다 유연하게 활용할 수 있으며, 기존 코드의 수정 없이 새로운 기능을 추가할 수 있습니다.