Un unico social network globale direi (non è importante e non è richiesta questa cosa, l'esercizio è più che altro per farci prendere familiarità con le liste senza usare robe già pronte).
Ehm...non ricordavo nemmeno che i costruttori potessero essere privati!
Vediamo se ho capito bene quello che hai detto:
codice:
public class Utente {
//definisco le variabili di classe
private String nome, cognome;
private String nickname;
private Date dataNascita;
private Utente utentePresentante;
private static final Utente FOUNDER=new Utente("Alan", "Turing", "Fondatore", new Date(12,5,23));
//costruttore founder
private Utente (String nome, String cognome, String nickname, Date dataNascita) {
this.nome=nome;
this.cognome=cognome;
this.nickname=nickname;
this.dataNascita=dataNascita;
}
//costruttore utente
public Utente (String nome, String cognome, Date dataNascita, Utente utentePresentante) {
this.nome=nome;
this.cognome=cognome;
this.dataNascita=dataNascita;
this.utentePresentante=utentePresentante;
if (utentePresentante==null){
System.out.println("Non puoi creare un utente che non e' stato presentato da nessuno!");
}
}
Il primo problema che mi si presenta è: come faccio a riferirmi a FOUNDER all'esterno di questa classe?
Cioè, nella classe UtenteTest dove creo gli utenti del social network, il primo utente che creo come fa ad aver FOUNDER come utentePresentante?
Per di più ho provato anche a creare nella classe utenteTest un utente del social network, senza mettergli il riferimento all'utente presentante, e non funziona nemmeno. E' come se non trovasse più il costruttore, perché mi dice cannot find symbol.
Grazie.