Ahoj, je to to same co jsem navrhoval, akorat je to spravne doplnene o
parametrizaci HVisitable v paramatru stejnym typem.
Potomek HVisitable bude vypadat stejne jak jsem navrhoval bude implementovat
HVisitable parametrizovane sebou samym. A
visitor bude parametrizovany pouze typem, ceho ze je navstevnikem.
Jirka
Lukáš Zapletal napsal(a):
> Muzete to rozvest a uvest plny kod pro obe tridy? Protoze ja se
> nechytam a porad to ne a ne napsat, aniz by kompilatoru neco vadilo.
> Kdyz modifikuji Visitable, tak je problem u Visitora a naopak. Navic
> se mi pak nedari vytvorit zadneho potomka. Napriklad:
>
> public interface HVisitable<E extends HVisitable<E>> {
>
> boolean accept(E visitor);
>
> }
>
> jak by mel byt potomek?
>
> public abstract class HDefaultNodeVisitable implements
> HVisitable<HDefaultNodeVisitable> {
>
> @Override
> public boolean accept(HDefaultNodeVisitable visitor) {
> . ....
> }}
>
> To fungovat nebude, protoze metoda accept musi mit jako parametr
> Visitora a ne Visitable rozhrani.
>
> Diky LZ
>
>
--
Jiří Mareš (mailto:[EMAIL PROTECTED])
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic