Annotation
- 자바 5(.15) 이후 지원하는 기능, 클래스나 필드 혹은 메소드 앞에 붙여서 사용
자바언어로 표현하기 어려우나 프로그램에서 전체적으로 표현해야 할 테이터를 기술하는 방법
정의)
@Target - 어노테이션의 적용대상 Constructor, Field, Enum, Local Variable, Method, Package, Parameter, Type(Class)
@Retention - 적용시점 Source, Class, Runtime
@Documented - 어노테이션을 javadoc에 포함한다
@Inherited - 어노테이션 상속을 가능케 한다
public @interface AnnotationName {}
예)
@Target(ElementYtpe.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface AnnotionName{
public String defaultVal() default "OK";
public String val();
}
* 대표적인 어노테이션
@Deprecated 사전적 의미는 비난하다, 반대하다 지만, 사용 자제를 의미한다.
사용시 컴파일되어 실행은 가능하나 컴파일시 메시지로 알려준다
@Override 부모로 부터 상속받은것을 재정의함을 의미, 재정의가 올바르게 되지 않으면 컴파일시 에러가 남.
|