2012-07-26 2 views
3

에 액세스하려면 어떻게해야합니까? 클래스의 check이 true 또는 false인지 여부를 main에 어떻게 액세스합니까?
Main 클래스에는 무엇을 써야합니까?런타임에 주석에 액세스

package annotation; 

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

    @Retention(RetentionPolicy.RUNTIME) 

    public @interface annotation { 
     public String name() default "Jimmy"; 
     public boolean check() default false; 
    } 

package annotation; 

    @annotation(name = "Jack", check = false) 

    public class Sample { 

     public String str = "Hi"; 

     public void printHi(String str) { 
      System.out.println(str); 
     } 
    } 

package annotation; 

    public class Main { 
     public static void main(String[] args) { 

     } 
    } 

답변

7

사용 Sample.class.getAnnotation(annotation.class)는 주석 인스턴스를 얻고, 체크 값을 얻을 수 check()를 호출 : 클래스는 시작해야한다는

System.out.println(Sample.class.getAnnotation(annotation.class).check()); 

주 대문자, 그리고 annota라는 이름 "주석"은 매우 혼란 스럽습니다.

관련 문제