2011-03-11 2 views
0

에 주석 인터페이스의 기본 값을 인쇄하는 방법 :내가 주석 인터페이스와 새로운 오전 주요 자바 프로그램

@interface Test{ 
    public String getInfo()default "hi"; 
} 

@test 
class TestImpl implements Test 
{ 
    public String getInfo(){return getInfo();} 
    public static void main(String...args) 
    { 
     TestImpl impl=new TestImpl(); 
     impl.getInfo(); 
    } 
} 

는 사실 내가이 전적으로 혼란 스러워요, 난() 내 된 getInfo의 기본 값을 인쇄 할 행동 양식. 그것을 사용하는 방법과 주석이 달린 인터페이스의 장점을 알지 못합니다.

만약 내가 위의 코드를 기본값의 인쇄 가능한 형식으로 변경하고 또한 그럴 수 없다면 주석이 달린 인터페이스에 대한 자세한 정보를 읽을 수있는 URL을 plz에서 변경하십시오.

감사합니다, 수 보드 레이 다음

+0

다음에 코드의 형식을 지정하는 것을 잊지 마십시오. 어떻게하는지 모르는 경우 Markdown 도움말을 살펴보십시오. – krtek

+0

당신은 그것을 반듯이해야 할 것입니다. –

+0

다음번에 실수하지 말고 – subodh

답변

3
class TestImpl { // not implementing the annotation interface 

과 : 보통 주석 속성이 게터로 정의되지 않은

Test annotation = TestImpl.class.getAnnotation(Test.class); 
String info = annotation.getInfo(); 

참고. 따라서 getInfo() 대신 info()

업데이트 : 귀하의 특수 효과 클래스에 @Retention(RetentionPolicy.RUNTIME)이 필요합니다. 존재하지 않으면 런타임에 주석이 보존되지 않습니다.

+0

안녕하세요, Bozho이게 null 포인터 예외를 줄 것입니다. – subodh

+0

@subodh - 업데이트 된 내용보기 – Bozho

+0

안녕하세요, 저에게 stil이 null 포인터 예외를줍니다. – subodh

관련 문제