Ma c'è un overriding : aggiungi è un metodo sia della classe Array che della classe Lista.Originariamente inviato da andbin
Tecnicamente puoi invocarlo tranquillamente ... lo "erediti".
aggiungi( .... );
Tuttavia, ti avverto che dal punto di vista concettuale non quadra molto.
Se l' oggetto è di tipo Array chiama soltanto il metodo della classe Array.
Poi ho riscontrato un altro problema: se dichiaro un riferimento di tipo Array, non è in grado di accedere al campo prox del suo supertipo.
Innanzitutto la classe Lista l' ho modificata così:
Così il campo prox può essere acceduto anche se ho un riferimento di tipo Array.codice:protected Lista prox;
Ma il problema è che se dichiaro:
Mi da errore:codice:Array ptr; ptr=prox;
"incompatible types - found Lista but expected Array"
Ma non dovrebbero essere tipi compatibili? Cioè Array è di tipo Array, ma anche di tipo Lista, e anche di tipo Object.Per cui dovrebbe essere compatibile col tipo Lista![]()

Rispondi quotando