Tak si trošku odpovím sám. Je třeba použít T<? super B>, ale neřeší to můj problém...
private class A {}
private class B extends A {}
private abstract class DaoA<T extends A> {
void doSomething(T param) {}
}
private class DaoB extends DaoA<B> {}
a pak potrebuji
DaoA<? extends A> dao = new DaoB();
dao.doSomething(new B()); // nejde přeložit
Dne 25.11.2010 08:06, Martin Beranek napsal(a):
> Zdravím,
>
> proč toto nefunguje?
>
> private class B {}
>
> private class Test<T> {
> void doSomething(T param) {}
> }
>
> a nekde potrebuji
>
> Test<? extends B> t = new Test<B>();
> t.doSomething(new B()); // toto nelze zkompilovat
>
> diky
>
--
Martin Beránek
ICZ a.s., Pobočka Brno
Londýnské náměstí 2/856, 639 00 Brno
Tel.: +420 222 272 323
Tel.: +420 222 272 111
Fax.: +420 222 272 122
mailto:[email protected]
http://www.i.cz
smime.p7s
Description: S/MIME Cryptographic Signature
