Creazione array di oggetti
Consideriamo una classe dotata di un costruttore personalizzato.
Ad esempio:
class Punto{
double x; double y;
Punto(double xVI, double yVI){
// questo costruttore permette di assegnare dei valori iniziali all'oggetto di classe Punto che creeremo
x = xVI; y = yVI;}
}
supponiamo di voler creare un array chiamato vertice costituito da oggetti di classe Punto:
dovremo scrivere
Punto[] vertice;
vertice = new Punto[4];
PUNTO[4] NON E' IL COSTRUTTORE DELLA CLASSE PUNTO: E' UN COSTRUTTORE PER L'ARRAY DI TIPO OGGETTO
in effetti si potrebbe pensare di avere creato i quattro elementi a tutti gli effetti, ma le cose non stanno così:
ad ogni elemento dell'array deve essere associato un punto creato appositamente:
vertice[0] = new Punto(0.1, 3.7);
vertice[1] = new Punto(1.1, 3.7);
vertice[2] = new Punto(3.1, 3.7);
vertice[3] = new Punto(5.1, 3.7);
a questo punto gli oggetti esistono e possono essere utilizzati ad esempio se intendessimo stampare l'ascissa di vertice[0]
System.out.println(vertice[0].x);