Posted By: Kwart (Never say never to me.) on 'CZprogram'
Title: Re: Java
Date: Sat Feb 1 14:06:48 2003
Ahoj
> zacinam s Javou a narazil jsem na pro me neprekonatelny problem. Btw jde o
> verzi1.3, na te to musi jet.
> Mam nekolik trid ktere jsou 'zvenci' stejne, vsechny obsahuji pouze jednu
> metodustejneho jmena a parametru. Nekolik -- asi sto. Potom mam metodu,
> ktera
> mi podle
> okolnosti vraci jmeno tridy, jejiz metodu mam prave zavolat.
> Cili potrebuju zavolat metodu [znameho jmena a volani] TRIDY, jejiz JMENO
> mam v promenne.
Myslim, ze nejcistci by bylo udelat pro tu hromadu trid interface a pak pouzit
napr. toto:
//je potreba doplnit osetreni vyjimek
MujInterface mif = (MujInterface) Class.forName(jmenoTridy).getConstructor(
new Class[] {}).newInstance(new Object[] {});
mif.metoda();
jestlize to pres interface resit nechces, pak treba takhle
//opet vyjimky :-)
Object oTmp = Class.forName("jmenoTridy").getConstructor(
new Class[] {}).newInstance(new Object[] {});
oTmp.getClass().getMethod(jmenoMetody, new Class[] {}).invoke(
oTmp, new Object[] {});
Pisu to z hlavy a Java Core Api, takze snad tam neni moc chyb.
JC Kwart
** Never say never to me. **