-
애노테이션 (주석, 메모 ...)
프로그램 자체에 어떤 영향을 안 주면서도, 어떤 역할을 하는지 알려주는 역할 (미리 약속된 형식이 있음)
ex) '@Test'라는 애노테이션을 메소드에 붙이게 되면, 메소드가 포함된 프로그램에는 아무런 영향을 안 주면서도, 테스트 프로그램에게 해당 메소드를 테스트해야 한다는 사실을 알리게 된다.
표준 애노테이션
자바에서 기본적으로 제공하는 애노테이션
ex) @Override, @Deprecated, @SuppressWarnings ...
메타 애노테이션
애노테이션을 정의하는데 사용되는 애노테이션
ex) @Target, @Retention, ...
마커 애노테이션
(애노테이션의) 요소가 하나도 없는 애노테이션
애노테이션 요소의 규칙
1. 요소의 타입은 기본형, String, Enum, 애노테이션, Class만 허용된다.
2. ( )안에 매개변수를 선언할 수 없다.
3. 예외를 선언할 수 없다.
4. 요소를 타입 매개변수로 정의할 수 없다.
public @interface MyAnnotation {
int id = 100; // 상수 선언 가능
String major (int i, int j); // 에러
String minor() throws Excetpion; // 에러
ArrayList<T> list(); // 에러, 요소의 타입에 타입 매개변수 사용불가
}참고
자바의 정석
http://www.nextree.co.kr/p5864/
'우아한테크캠프' 카테고리의 다른 글
우아한테크캠프 Day11 (0) 2018.07.17 enum (열거형) (0) 2018.07.15 우아한테크캠프 Day10 (0) 2018.07.14 자바 ORM 표준 JPA (0) 2018.07.13 우아한테크캠프 Day09 (0) 2018.07.12