Salve!

Provo a spiegare il problema che sto incontrando:

Ho un vector pieno di oggetti di un certo tipo.
Runtime voglio ridefinire uno di questi elementi (il cui indice mi verra' dato da un mouse listener su una jlist), istanziando al suo posto un elemento di una sottoclasse del tipo originario del mio vector.
Se avessi un array di oggetti mi basterebbe fare qualcosa del tipo:

MusicArtist[] maArray = ...
ciclo for dove istanzio tutti gli oggetti
maArray[3] = new SoloMusicArtist(...);

Con un vector, se uso la stessa sintassi, ovvero maVector.get(3) = new ...
mi dice che a sinistra di un assegnamento ci deve esser una variabile ovviamente..

L'idea era quella di rimuovere l'oggetto in posizione 3 e aggiungere un oggetto di tipo SoloMusicArtist in posizione 3 ma mi sembra oltre che costosa dal punto di vista della memoria (devo spostare tutti gli oggetti > 3 di una pos per 2 volte) anche piuttosto rischiosa, sbagliare un indice e' cosa di un attimo..
Il discorso dell'istanziare un oggetto di una sua sottoclasse mi servira' poi per chiamarci metodi che usano il polimorfismo e non avere ventordicimila righe di codice per fare la stessa operazione si oggetti diversi..

C'e' un modo migliore per ottenere questo risultato?

Grazie mille!