728x90
반응형
Annotation
- @ 기호를 앞에 붙여서 주석처럼 사용한다.
- 메타데이터를 먼저 이해해야 된다.
Meta Data
- 데이터에 대한 데이터 이다.
- 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해
일정한 규칙에 따라 콘텐츠에 대하여 부여되는 데이터이다. - 예를 들자면 카드목록이다.
- 카드를 빨리 찾기 위해 가나다순, 서명순, 저자명 순 등의 메타데이터가 필요하다.
Annotation 의 사용용도
- 코드 문법 에러검증
- 코드 자동생성 정보 제공
- 런타임시 특정기능 제공
Annotation 의 종류
자바 코드에 적용되는 내장 애너테이션
- @Override
- 해당 어노테이션을 주게 되면 오버라이드 대상인지 확인 할 수 있다
- 확인후 잘못 되었으면 에러가 발생한다. - @Deprecated
- 코드에서 더이상 사용하지 않는 다는 의미다.
- 차후에 없어질 코드에 붙인다. - @SuppressWarnings
- 컴파일시 컴파일 경고를 사용하지 않도록 설정할 수 있다.
기타 애너테이션에 적용되는 애너테이션 (메타 애너테이션)
- @Retention
- 어노테이션의 범위를 지정한다. - @Documented
- 문서에도 너오테이션 정보를 표햔다. - @Target
- 어노테이션을 적용할 위치를 지정한다. - @Inherited
- 자식클래스가 어노테이션도 상속 받을수 있다.
자바 7부터 추가 애너테이션이 언어에 추가되었다.
- @SafeVarargs
- 제너릭 같은 가변인자의 매개변수를 사용할 때의 경고를 무시한다. - @FunctionalInterface
- 함수형 인터페이스를 지정하는 어노테이션입니다.
- 메서드가 존재하지 않거나 1개 이상을 가지면 에러를 발생시킨다.
- 람다와 주로 같이 사용된다. - @Repeatable
- 연속적으로 어노테이션을 선언할 수 있게 해준다.
728x90
반응형
'Language > Java' 카테고리의 다른 글
[Java] String, StringBuffer, StringBuilder (0) | 2021.08.23 |
---|---|
[Java] String Object 와 String literal, 동일성 동등성 (0) | 2021.08.21 |
[Java] Collection Framework (0) | 2021.08.20 |
[Java] Lambda (0) | 2021.08.06 |
[Java] Sort (0) | 2021.05.29 |
댓글