[JAVA] Annotation이란?

fooooif·2021년 5월 12일
0
post-thumbnail

✍ 정리 할 내용

Annotation 이란? 프로그램의 소스코드 안에 다른 프로그램을 위한 정보를 미리 약속된 형식으로 포합시킨것이 바로 Annoation이다.

코드를 작성하다보면 @Override 같이 @가 붙은 것을 많이 봤을 것이다. @Override가 컴파일에게 오버라이딩이라는 것을 알려주는 Annotation 대표적인 예이다.

👉 정리하기

표준 Annotation

Annotation설명
@Override컴파일러에게 Override하는 메서드인 것을 알려줄때 사용한다.
@Deprecated앞으로 사용하지 않을 것을 권장하는 대상에 붙인다.
@FunctionalInterface함수형 interface라는 것을 알린다.
@SuppressWarnings컴파일러의 특정 경고메시지가 나타나지 않게 해준다.
@SafeVarargs지네릭 타입 가변인자에 사용한다.
@Nativenative 메서드에서 참조되는 상수 앞에 붙인다.

Meta Annotation

Annotation설명
@TargetAnnotation이 적용 가능한 대상을 지정하는데 사용한다.
@DocumentedAnnotation이 정보를 javadoc으로 작성된 문서에 포합시킬때 사용한다.
@RetentionAnnotation이 유지되는 범위를 지정하는데 사용한다.

Annotation의 구조


interface앞에 @를 붙혀서 만들어준다. 여기서 사용되는 @Documented @Retention @Targetmeta Annotation이라고 부른다
여기서 Enum 형태인 ElementType을 멤버로 가진다. 멤버로 가질 수 있는 타입은 int나 double과 같은 원시 타입이나 String, Class 타입, 배열 타입, Enum 을 사용할 수 있다.

profile
열심히 하자

0개의 댓글