[Javalist] Annotáció probléma

Böszörményi Péter zmblevlist at gmail.com
2013. Nov. 20., Sze, 12:42:12 CET


Szerintem vagd ki azt a fat.
Ez nekem fordul, bar az vitathatatlan, hogy sok ertelme nincs:

Override a = Object.class.getAnnotation(Override.class);
Field f = null;
Override b = f.getAnnotation(Override.class);

Milyen hibat mond a fordito, ha nincs ott a cast?

On 2013-11-20 12:28, József Keresztes wrote:
> Sziasztok !
>
> Valamit nagyon nem értek, persze lehet hogy a fától nem látom az erdőt :)
> Van egy annotációm, a neve View. Amikor egy osztálynál vizsgálom hogy el
> van-e látva ezzel az annotációval,
> kell egy "számomra értelmetlen" cast, különben a kód nem fordul le.
> Ha ugyanezt egy Field-nél vizsgálom, nem kell cast-olni. Az osztálynál
> miért kell ???
> Egyébként a dolog annotáció független, más annotációval is a helyzet
> ugyanez.
>
>
> Class cls = ...;
> Field field = cls.getField(...);
>
> View view = (View)cls.getAnnotation(View.class); //??? mért kell cast ???
> View view2 = field.getAnnotation(View.class);
>
> Dokumentáció szerint a Class osztály getAnnotation() metódusa:
>
> public <A extends Annotation> A getAnnotation(Class<A> annotationClass)
>
> Dokumentáció szerint a Field osztály getAnnotation() metódusa:
>
> public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
>
>
> Üdv, Joe
>
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>


-- 
Üdvözlettel,
Böszörményi Péter


További információk a(z) Javalist levelezőlistáról