자바 애너테이션

위키백과, 우리 모두의 백과사전.
(Annotation에서 넘어옴)

자바 애너테이션(Java Annotation)은 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종이다. 보통 @ 기호를 앞에 붙여서 사용한다. JDK 1.5 버전 이상에서 사용 가능하다. 자바 애너테이션은 클래스 파일임베디드되어 컴파일러에 의해 생성된 후 자바 가상머신에 포함되어 작동한다.

내장 애너테이션[편집]

자바는 언어에 내장된 애너테이션들의 집합을 정의한다. 7개의 표준 애너테이션 중에 3개가 java.lang의 일부이며, 나머지 4개는 java.lang.annotation으로부터 가져온다.[1][2]

자바 코드에 적용되는 내장 애너테이션
  • @Override
  • @Deprecated
  • @SuppressWarnings
기타 애너테이션에 적용되는 애너테이션 (메타 애너테이션)
  • @Retention
  • @Documented
  • @Target
  • @Inherited

자바 7부터 추가 애너테이션이 언어에 추가되었다.

  • @SafeVarargs
  • @FunctionalInterface
  • @Repeatable

예제[편집]

다음은 @override 애너테이션의 예제이다.

public class Animal {
    public void speak() {
    }

    public String getType() {
        return "Generic animal";
    }
}

public class Cat extends Animal {
    @Override
    public void speak() { // This is a good override.
        System.out.println("Meow.");
    }

    @Override
    public String getType() { // Compile-time error due to mistyped name.
        return "Cat";
    }
}

같이 보기[편집]

각주[편집]

  1. “Predefined Annotation Types”. Oracle Corporation. 2016년 12월 17일에 확인함. 
  2. “The Built-In Annotations : Standard Annotations”. 2016년 12월 17일에 확인함. 

외부 링크[편집]