Sono arrivato a questo punto vi posto il programma

codice:
public class prova {
private String cognome;
private String nome;
int eta;

	public prova (String cogn,String nom,int et ){
	   eta=et;
	   nome = nom;
	   cognome = cogn;
		
	}
	//public void dichiarazione(){
	//	prova[] p = new prova[4];
	//	for (int i = 0; i <4;i++){
	//	 p[i] = new prova (cognome, nome,eta); 
		 
	//}
	//}
	
}
(la parte dichiarazione penso che non serva per questo ho provato ad eseguire il programma anche senza, e questo è il main

codice:
import javax.swing.JOptionPane;
public class arrayprovamain {

	public static void main(String[] args) {
		int etaa;
		String cognomee;
		String nomee;
		prova[] p = new prova[4];
		for(int i =0;i<4;i++){
		
		nomee = JOptionPane.showInputDialog("inserire nome");
		cognomee = JOptionPane.showInputDialog("inserire cognome");
		etaa = Integer.parseInt(JOptionPane.showInputDialog("inserire età "));
		prova pro = new prova (nomee,cognomee,etaa);
		p[i] = pro;
		//pro.dichiarazione();
		
		}
		for (int k =0; k<4;k++){
		System.out.println(p[k]);
	}
	}

}
quando provo a stampare p (che a mio avviso dovrebbe contenere tutti i dati) mi stampa solo 5 indirizzi e se provo a stampare ad esempio p.nomee non me lo da proprio come posso fare???