AW: [JavaTech] return type override
Szitas Krisztian
k.szitas at gisma.de
2001. Dec. 11., K, 16:39:19 CET
En ertem mit jelent a return type ovveride, csak azt
nem kapisgalom hirtelen, hogy mikor jo az nekem,
van ertelmes felhasznalasa ennek valamikor?
class Processor {
void process( SubBlahTarolo cucc ) {
SubBlah jaj = cucc.getBlah();
}
void process( BlahTarolo cucc ) {
Blah jaj = cucc.getBlah();
itt a VM kitalalja hogy most Blah getBlah()-ot hivja meg,
vagy inkabb a SubBlah getBlah()-ot?
a vissateresi ertek alapjan biztoasan megteheti,
de mi van, ha en reflekciozok, es azt mondom, hogy
Object jujujj = cucc.getBlah();
itt automaikusan a legnagyobbat venne?
hogy a kovetkezo castomnal ne szarjon be a rendszer?
SubBlah castolt = (SubBlah)jujujj;
}
}
na most a SubBlahTarolo-t hogyan kellene akkor implementalni?
class Cuccos implements SubBlahTarolo {
Blah getBlah();
SubBlah getBlah();
}
vagy eleg lenne igy?
de akkor minden olyan osztalyt is meghivhatok a SubBlach hierchiajaban?
Hogyan akadalyozom meg, hogy egy kozbenso osztalyt elerjen a hivo? valami
hinttel?
esetleg mondjuk egy Except kulcsszot eleirok a methodnak (a la final vagy
ilyenek?)
class Cuccos implements SubBlahTarolo {
SubBlah getBlah();
}
De akkor mit csinalok olyan esetben, amikor nekem csak Blah kellene?
Letrehozom csak azert a SubBlahot (esetleg 100x annyi eroforrast
felhasznalva)
hogy legyen egy Blahom?
További információk a(z) JavaTech levelezőlistáról