[인프런 워밍업 클럽 0기] BE 1일차 과제 Annotation
2024.02.19
어노테이션(Annotation)을 사용하는 이유(효과)는 무엇일까?
어노테이션은 사전적 의미로 주석이라는 뜻, 소스코드 안에 다른 프로그램을 위한 정보를 약속된 형식으로 포함
기존의 자바에서는 구성과 설정값을 외부 xml 설정 파일에 명시하여 프로그램 되었음
재컴파일 없이 쉽게 변경사항을 적용할 수 있다는 장점이 있었지만
프로그램의 규모가 커질수록 설명을 다 적어야하고, 프로그램 작성할때 마다 많은 설정을 작성해야하는 단점이 있었음
이를 해결하기 위해 어노테이션을 고안
어노테이션 종류
Built-in-Annotation : 자바에 기본적으로 내장됨. 주로 컴파일러 위함
Meta-Annotation : 어노테이션에 사용됨. 해당 어노테이션의 동작 대상 결정
자바에서는 코드에서 특별한 의미 혹은 기능을 수행하며, 추가적인 정보를 제공
어노테이션의 역할
컴파일러 체크하도록 정보를 제공
프로그램을 빌드할 때 코드를 자동으로 생성할 수 있도록 정보를 제공
런타임에 특정 기능을 실행하도록 정보 제공
해당 동작을 수행하는 프로그램 이외에 다른 프로그램에는 영향을 주지 않음
나만의(커스텀) 어노테이션 만들기
커스텀 어노테이션을 만들기 위해서는 @interface를 사용
필요한 메타 어노테이션을 사용
@Retention : 어노테이션이 유지되는 기간
@Target : 어노테이션이 적용 가능한 대상을 지정하는데 사용
@Document : 어노테이션에 대한 정보가 javadoc로 작성한 문서에 포함될 때 사용
@Inherited : 자손 클래스에도 상속되도록 할 때 사용
댓글을 작성해보세요.