Ho una classe astratta 'Element' con un paio di variabili e qualche metodo.
Da questa classe, "estendono" altre due classi diverse, Street e Building, che aggiungono ad Element qualche variabile e qualche altro metodo.
Ho un'altra classe, che definisce una matrice di Element: Element[][] cityInstance
Ora, nel corso del programma, clonerò dei prototipi delle classi Street e Building (utilizzando un metodo della classe astratta Element) per poi assegnarli ad una posizione nella matrice cityInstance.
- Codice: Seleziona tutto
cityInstance[x][y] = (Street) Street.cloneMe()
Il codice sembra funzionare, ma il mio problema, più che altro di letteratura è se posso fare quello che ho fatto!
Gli elementi di cityInstance sono di tipo Element, mentre, seppur cloneMe() è definita in Element quindi mi ritorna un oggetto Element, io castizzo questo Element nel tipo definito dalla sottoclasse Street.
Spero di aver chiarito il problema... intanto, visto che funziona vado avanti, ma vorrei un riscontro su questa cosa, grazie!
Ciao