[java] 자바 애노테이션

애노테이션은 자바에서 메타데이터를 기술하기 위한 특별한 형식입니다. 자바 어플리케이션에서 컴파일러, 런타임, 다른 도구들에게 추가적인 정보를 제공하기 위해 사용됩니다. 애노테이션은 @ 기호를 사용하여 표기하며, 클래스, 메소드 또는 필드에 적용될 수 있습니다.

애노테이션의 사용 예시

  1. 컴파일 경고 무시하기

애노테이션을 사용하면 컴파일 경고를 무시할 수 있습니다. 예를 들어, @SuppressWarnings 애노테이션을 사용하여 지정된 경고를 무시할 수 있습니다.

@SuppressWarnings("unchecked")
List<String> myStringList = new ArrayList();
  1. 코드 문서화

애노테이션을 사용하여 코드에서 문서화를 할 수 있습니다. 예를 들어, @Author 애노테이션을 사용하여 작성자의 정보를 추가할 수 있습니다.

@Author(name = "John Doe", date = "2022-01-01")
public class MyClass {
    // 클래스 내용
}
  1. 테스트 케이스 작성

JUnit과 같은 테스트 프레임워크에서 애노테이션을 사용하여 테스트 케이스를 작성할 수 있습니다. 예를 들어, @Test 애노테이션을 사용하여 테스트 메소드를 정의할 수 있습니다.

@Test
public void testMethod() {
    // 테스트 로직
}

커스텀 애노테이션 만들기

자바에서는 커스텀 애노테이션을 만들 수 있습니다. 이를 통해 자신만의 애너테이션을 정의하여 어플리케이션에 사용할 수 있습니다.

public @interface MyAnnotation {
    String value();
    int count() default 1;
}

위의 예시에서 MyAnnotation 애노테이션은 valuecount라는 멤버를 가지고 있습니다. value는 필수 매개변수이고, count는 기본값을 가지는 선택적 매개변수입니다. 이제 이 커스텀 애노테이션을 사용할 수 있습니다.

@MyAnnotation(value = "Hello", count = 5)
public class MyClass {
    // 클래스 내용
}

결론

애노테이션은 자바 어플리케이션에서 메타데이터를 기술하기 위한 강력한 도구입니다. 컴파일 경고 무시, 코드 문서화, 테스트 케이스 작성 등 다양한 용도로 사용할 수 있으며, 커스텀 애노테이션을 만들어 자신만의 로직을 추가할 수도 있습니다. 자바 개발자라면 애노테이션에 대한 이해와 사용법을 숙지하는 것이 중요합니다.

참조: