개발/Java

Java에서의 마커 인터페이스(MarkerInterface)

ju_ni_ 2023. 7. 19. 10:22
반응형

이번 포스팅에서는 Java의 마커 인터페이스에 대해 다루어 보겠습니다. 인터페이스에 대한 기본적인 이해가 있다면 더 쉽게 이해할 수 있을 것입니다. 여기서는 마커 인터페이스가 무엇인지, 어떻게 사용하는지에 대해 알아보겠습니다.

 

 

마커 인터페이스란?

 

마커 인터페이스는 자바에서 특정 클래스가 특정 동작을 할 수 있음을 나타내기 위한 목적으로 사용됩니다. 마커 인터페이스는 어떠한 메서드도 포함하지 않은 인터페이스로, 클래스가 특정한 성질을 가짐을 표시하는 역할을 합니다.

 

public interface MyMarkerInterface {
}

 

위 코드는 MyMarkerInterface라는 이름의 마커 인터페이스를 선언하는 코드입니다. 보시다시피 이 인터페이스는 어떠한 메서드도 포함하지 않습니다.

 

 

마커 인터페이스 활용

 

마커 인터페이스는 클래스가 특정한 성질을 가짐을 표시하는 용도로 사용됩니다.

 

public interface MyMarkerInterface {
}

public class MyClass implements MyMarkerInterface {
    public void myMethod() {
        System.out.println("My Method");
    }
}

public class Main {
    public static void main(String[] args) {
        MyClass myClass = new MyClass();
        if (myClass instanceof MyMarkerInterface) {
            myClass.myMethod();		// 출력 : My Method
        }
    }
}

 

 예제에서, MyClassMyMarkerInterface를 구현하고 있습니다. 이렇게 함으로써 MyClass 객체는 MyMarkerInterface의 인스턴스로 간주됩니다. 이를 통해 특정한 조건 (여기서는 myClassMyMarkerInterface의 인스턴스인지 여부)에 따라 코드를 실행할 수 있습니다. 여기서는 MyClassMyMarkerInterface의 인스턴스인 경우에만 myMethod를 실행하도록 했습니다.

 

 

이번 포스팅에서는 마커 인터페이스에 대해 알아보았습니다. 마커 인터페이스는 메서드를 포함하지 않는 인터페이스로, 특정 클래스가 특정 성질을 가짐을 나타내는데 사용됩니다. 마커 인터페이스를 활용하면 코드의 유연성과 가독성을 높일 수 있습니다.

반응형