클래스에서 익명 클래스 인 여러 필드가 있습니다. 그들 중 일부는 주석이 있습니다. 예를 들면 다음과 같습니다.필드의 주석을 직접 가져 오기
public class MainClass {
@Annotation
public static Test t = new Test() {...}
Interface Test {...}
}
나는 MainClass.class.getField를 ("t") 수행하여 t의 주석을 볼 수 있습니다 getAnnotations()를 알고,하지만 난 참조하여 t에 대한 주석을 얻을 수있는 방법이있다 티? 예를 들어, 테스트 모음이있는 경우 반복을 통해 주석을 볼 수 있습니까?
Collection<Test> c;
...
// MainClass.t is in collection c
...
for (Test test : c) {
// get annotation of test
}
나는이 불가능합니다 같은데요, 그렇지 않은 경우, 가까운 내가 할 노력하고있어 무엇을 얻을 수있는 가장 좋은 방법은 무엇입니까?
익명의 클래스에서 고유 한 주석을 볼 수있는 방법이 있을까요? public static Test t = new Test() {... this.getClass(). doSomething} 같은 것이 있습니까? – codebreaker
@ user1940121 익명 클래스에 인스턴스 필드가있는 경우 평소와 같은 방법으로 액세스 할 수 있습니다. 귀하의 예를 들어, 't.getClass(). getField (...)'. 해당 필드는 익명 클래스 (인스턴스)에만 속합니다. –