[JAVA] Annotation 어노테이션 🍕 개념, 종류

다 은·2024년 6월 26일

JAVA

목록 보기
12/14

Annotaion

annotation 👽

사전 상, annotation은 '주석'이라는 의미를 가지지만 자바에서는 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종이다.

어노테이션은 @를 사용하여 작성하며,

  1. 컴파일러에게 문법 에러를 체크하도록 정보 제공
  2. 프로그램을 BUILD 할 때에 코드를 자동으로 생성할 수 있도록 정보 제공
  3. 런타임에 특정 기능을 실행하도록 정보 제공

위의 역할을 수행한다. 어노테이션은 타겟에 대한 동작을 수행하는 프로그램 외에는 어떠한 영향을 주지 않는다.

annotation 종류

어노테이션은 크게 세 가지로 분류할 수 있다.

  1. 표준 어노테이션
  2. 메타 어노테이션
  3. 사용자 어노테이션
  1. 표준 어노테이션 (Built-in-Annotaion)
    📙 자바에서 기본적으로 제공하는 어노테이션, 내장 어노테이션 이라고도 한다.
  • @Override
    컴파일러에서 메소드를 오버라이딩 할 때 사용

  • @Deprecated
    차후 버전에 지원되지 않을 수 있기 때문에 사용하지 않을 메소드를 지정할 때 사용

  • @FunctionalInterface
    함수형 인터페이스에 사용

  • @SuppressWarning
    경고 메시지를 나타내고 싶지 않을 때 사용

-@SafeVaragrs
가변 인자의 매개변수를 사용할 때, 경고 메시지를 나타내고 싶지 않을 때 사용

  1. 메타 어노테이션
    📙 어노테이션을 정의하는데 사용되는 어노테이션, 주로 새로운 어노테이션을 정의할 때 사용된다.
  • @Target
    어노테이션을 정의할 때 적용 대상을 지정하는 데 사용

  • @Documented
    어노테이션의 정보를 javadoc, 즉 문서에 포함시킬 때 사용

  • @Inherited
    어노테이션을 하위 클래스에 상속 시킬 때 사용

  • @Repeatable
    반복하여 붙일 수 있는 어노테이션을 정의할 때 사용

  1. 사용자 어노테이션
    📙 사용자가 직접 정의하여 사용하는 어노테이션

0개의 댓글