My Background è C++ e in C++ possiamo facilmente creare array di oggetti usando una semplice sintassi. className obj[n];
e anche il costruttore chiamerà il tempo n
.Matrice di oggetti in Java vs C++
Ma quando ho provato a creare array di oggetti in java className[] obj=new className[n];
nessuna chiamata del costruttore. Dopo la ricerca ho trovato la risposta di questa domanda su stackoverflow che è sufficiente creare n
Riferimento che può puntare a n
oggetti e ho bisogno di creare nuovamente oggetti per ogni riferimento come. obj[0]=new className();
Ora voglio solo chiedere perché java farlo? c'è qualche ragione anche se il C++ lo permette, ma java non permette di creare array di oggetti nello stesso modo? Ho cercato questo, ma non ho ancora ottenuto risposta esatta.
allora perché selezioniamo lingue diverse v'è motivo che ogni lingua abbia differenze di prestazioni, sicurezza ecc. e il progettista di ogni lingua seleziona sintassi/logica per una ragione Spiacente per i poveri inglese -_- –
Nota che la soluzione 'Arrays.fill' creerà un oggetto e lo assegnerà a ogni elemento dell'array. Questo risultato è raramente previsto, in genere sono necessari oggetti distinti per ogni elemento dell'array. –
grazie @TagirValeev ha modificato un Swer. –