¿Por qué Class.getAnnotation () requiere que haga un reparto?
Estoy usando Java 1.6.0_25.
Tengo una anotación definida:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public ,@interface Resource {
String value();
}
Y más tarde cuando uso getAnnotation:
Resource resource = (Resource)cls.getAnnotation(Resource.class);
el compilador e IDE acuerdan que debo emitir el resultado, pero getAnnotation se declara en la documentación de Java 1.5 como:
public <A extends Annotation> A getAnnotation(Class<A> annotationClass);
Since Resource.class es de tipo Class, me parece que esto significa que cls.getAnnotation (Resource.class) debería devolver el tipo Resource, y debería necesitar lanzar.
Todos los ejemplos que he encontrado usando getAnnotation no tienen un elenco, así que debo estar haciendo algo mal.