Salve a tutti, mi sto infrenando su una cosa semplicissima, devo spiegare il funzionamento di array di oggetti per cui ho digitato il seguente codice, in cui ho definito un'array di MOVIMENTI

codice:
package pac;

public class Correntista {
	private String contoCorrente = new String ();
	private String correntista = new String();
	private String indirizzo = new String();
	private Movimenti[] mov = new Movimenti[30];
	private int i=0; 
	public void setContoCorrente (String contoCorrente){
		this.contoCorrente=contoCorrente;
	}
	public String getContoCorrente (){
		return contoCorrente;
	}
	public void setCorrentista (String correntista){
		this.correntista=correntista;
	}
	public String getCorrentista (){
		return correntista;
	}
	public void setIndirizzo (String indirizzo){
		this.indirizzo=indirizzo;
	}
	public String getIndirizzo(){
		return indirizzo;
	}
	public String getDati(){
		return new String ("Conto corrente= "+contoCorrente+"\nCorrentista = "+correntista+"\nIndirizzo = "+indirizzo);
		//mi restituisce in stringa tt i dati salvati in precedenza
	}
	public void setMovimento(Movimenti movimento){
		mov[i]= movimento;
		System.out.println("indice="+i+" causale="+mov[i].getCausale());
		System.out.println("indice0=" causale="+mov[0].getCausale());
		i++;
	}
	public String getMovimento(int i){
		System.out.println("indice="+i);
	
	return new String ("causale = "+mov[0].getCausale()+"\n Importo = "+mov[0].getImporto());
	}

}
codice:
package pac;

public class Movimenti {
	private String causale = new String();
	float importo=0;
	public void setCausale (String causale){
		this.causale=causale;
	}
	public String getCausale (){
		return causale;
	}
	public void setImporto (float importo){
		this.importo=importo;
	}
	public float getImporto (){
		return importo;
	}
	
}
Dopodiche con il metodo setMovimento la popolo,lo strano che non riesco ha capire perche
nell'ndice 0 metto un valore ed è ok, quando metto un valore nell'indice 1 lo stesso valore me lo mette nell'indice 0, quando metto un valore nell'indice 2 lo stesso valore me lo mette nell'indice 0 ed 1 come riportato nel println qui sotto.
codice:
  
indice=0 causale=Apertura cc
indice0=causale=Apertura cc
indice=1 causale=Spese bollo
indice0=causale=Spese bollo
indice=2 causale=Spese auto
indice0=causale=Spese auto