어노테이션

말하는 감자·2025년 1월 2일
0

자바 중급

목록 보기
18/21
post-thumbnail

개념

어노테이션은 클래스나 메소드 위에 붙으며 @기호로 이름이 시작한다.
어노테이션은 자바가 기본으로 제공해주는 것도 있고, 사용자가 직접 만들 수 있다.(Custom 어노테이션)

Code 예시

count 100

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

@Retention(RetentionPolicy.RUNTIME)
// count100이 런타임동안 유지되어야 함을 의미
public @interface count100 {

}

Hello

public class MyHello {
    @count100
    public void MyHello(){
        System.out.println("hello");
    }
}

HelloExam

import java.lang.reflect.Method;

public class MyHelloExam {
    public static void main(String[] args) {
        MyHello hello=new MyHello();

        try {
            // 클래스 정보를 가져온 뒤 Myhello() 메소드 반환
            Method method=hello.getClass().getDeclaredMethod("MyHello");
            // 메소드에 count100이 부착되어있는지 검사
            if(method.isAnnotationPresent(count100.class)){
                for(int i=0;i<100;i++){
                    hello.MyHello();
                }
            }
            else{
                hello.MyHello();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}

결과

profile
주니어개발자(?)

0개의 댓글