인프런 워밍업 스터디 BE 1일
2024.02.19
어노테이션
어노테이션이란 ?
클래스나 메서드 또는 변수에 @ 를 사용하는 것을 말함
사전적으로는 주석이라는 의미지만 우리가 흔히 아는, 컴파일 되지 않는 주석과는 다름
클래스, 메서드, 변수 위에 달아 특별한 의미를 부여하고 주입할 수 있음
built-in 어노테이션
자바 내에 내장되어 있는 어노테이션
meta 어노테이션
다른 어노테이션에 적용되기 위한 어노테이션
즉, 커스텀 어노테이션을 만들 시 해당 어노테이션이 가지고 있는 특징 들을 잡아줄 수 있음
어노테이션의 기능
코드 가독성 상승
추후 유지보수가 편리해짐
컴파일러를 통한 경고 체크 및 에러 수정이 보다 쉽게 가능
커스텀 어노테이션
사용자가 직접 커스텀 어노테이션을 만들 수 있음
인터페이스 앞에 @를 붙여 커스텀 어노테이션을 만들 수 있음
public @interface MyAnnotation { String name(); String value(); }
메타 어노테이션을 사용하여 커스텀 어노테이션을 보다 세밀하게 만들 수 있음
Target을 통해 type. 즉 class, interface, enum에 적용될 수 있도록 설정
Retention을 통해 어노테이션이 어느 레벨까지 적용될 수 있는지 설정
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MyAnnotation {
String name();
String value();
}
@MyAnnotation(name = "someName", value = "Hello World")
public class TheClass {
}
댓글을 작성해보세요.