🔥새해맞이 특별 라이브 선착순 신청🔥

[인프런 워밍업 클럽 0기] 1일차 과제

<과제>

 

어노테이션을 사용하는 이유 (효과) 는 무엇일까?

  • 어노테이션이란?

어노테이션은 특별한 의미, 기능을 자동으로 해주는 기술로, 주석과 같은 의미를 가진다.

소스 코드 내에 추가적인 정보를 제공하는 태그이다.

Java 5부터 도입되었다.

어노테이션은 @를 사용하여 작성한다.

 

  • 어노테이션을 사용하는 이유(효과)

  1. 컴파일러에게 코드 문법 에러를 체크하도록 정보 제공

  2. 별도의 구성 파일 없이도 의존성 주입(dependency injection)과 같은 작업 수행

  3. Spring이 관리해야 할 클래스를 쉽게 지정(ex. @Component, @Service, @Repository)

     

 

 

 

나만의 어노테이션은 어떻게 만들 수 있을까?

@interface 키워드 사용

 

  • 설정할 수 있는 요소

  1. Retention Policy : 어노테이션이 언제까지 유지될 것인지 결정

  2. Target : 어노테이션이 적용될 수 있는 Java 요소(메소드, 필드, 클래스) 지정

  3. Member : 어노테이션 내에서 메소드 형태로 멤버 정의 가능

 

<사용자 정의 어노테이션 예제>

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

// Retention Policy (런타임에도 유지)
@Retention(RetentionPolicy.RUNTIME)
// Target (여기서는 메소드에만 적용)
@Target(ElementType.METHOD)
public @interface MyCustomAnnotation {
    // Member(기본값을 가질 수 있음)
    String description() default "No description";
    int value() default 0;
}

 

<사용자 정의 어노테이션 사용>

public class MyAnnotatedClass {

    @MyCustomAnnotation(description = "This is a custom annotation", value = 10)
    public void myMethod() {
    }
}

 

댓글을 작성해보세요.

채널톡 아이콘