11. Annotation

Java 어노테이션(Annotation)은 코드에 메타데이터를 추가하는 기능으로, 컴파일러나 프레임워크에게 추가적인 정보를 제공합니다. 어노테이션은 주로 컴파일 타임에 코드를 분석하고 처리하는 데 사용됩니다.

Java 어노테이션의 특징과 사용법에 대해 살펴보겠습니다:

1. 특징

  • @ 기호를 사용하여 어노테이션을 표시합니다. 예를 들어, @Override, @Deprecated 등이 있습니다.

  • 어노테이션은 컴파일러, 런타임, 리플렉션(reflection)을 통해 다양한 시점에서 읽을 수 있습니다.

  • 어노테이션은 코드에 메타데이터를 제공하여 코드의 의도를 설명하거나 동작을 변경할 수 있습니다.

  • 사용자가 직접 어노테이션을 정의할 수도 있습니다.

2. 내장된 어노테이션

  • @Override: 상위 클래스나 인터페이스의 메서드를 재정의하는 메서드에 붙여 사용합니다. 컴파일러가 오버라이딩을 올바르게 하는지 검사합니다.

  • @Deprecated: 사용이 권장되지 않는 요소에 붙여 사용합니다. 컴파일러와 개발자에게 해당 요소가 더 이상 사용되지 않는 것을 알려줍니다.

  • @SuppressWarnings: 특정 경고 메시지를 무시하도록 컴파일러에 지시합니다.

3. 사용자 정의 어노테이션

  • 사용자가 직접 어노테이션을 정의하여 프로그램에 사용할 수 있습니다.

  • 어노테이션은 @interface 키워드로 정의하며, 요소(element)와 기본값(default value)을 가질 수 있습니다.

예시:

javaCopy code@interface MyAnnotation {
    String value() default "";
    int count() default 0;
}
  • 사용자 정의 어노테이션은 다른 요소나 메서드에 적용할 수 있으며, 어노테이션의 요소는 필요에 따라 값을 설정할 수 있습니다.

Java 어노테이션은 코드에 메타데이터를 추가하여 추가 정보를 제공하고 동작을 변경할 수 있도록 돕는 기능입니다. 내장된 어노테이션을 사용하거나 사용자가 직접 어노테이션을 정의하여 프로그램에 활용할 수 있습니다. 어노테이션은 코드의 가독성, 유지 보수성, 문서화 등에 도움을 줄 수 있습니다.

Last updated