ho grossi problemi nel comprendere funzionamento e utilità dei costruttori
Beh... i costruttori sono metodi "speciali", che vengono richiamati quando istanzi una classe. I costruttori hanno lo stesso nome della classe e non ritornano nulla.
Un costruttore tipicamente inizializza i campi dell'oggetto che vai a creare.
Se per esempio hai una classe "Voto" che contiene la coppia materia-voto:
Codice:
public class Voto(){
private String materia;
private int voto;
public Voto (String materia, int voto){
this.materia = materia;
this.voto = voto;
}
public Voto(String materia){
this.materia = materia;
}
public void setVoto(int voto){
this.voto = voto;
}
}
quando tu poi vai a creare un oggetto di tipo Voto potrai fare:
Codice:
Voto votoM = new Voto("Matematica", 8);
Voto votoI = new Voto("Italiano");
Voto votoX = new Voto();
Nei primo caso hai usato il primo costruttore passandogli il nome della materia e il voto relativo.
Nel secondo hai passato solo il nome della materia, quindi l'oggetto avrà settata la materia ma non il voto
Nel terzo caso non hai passato nulla ed è stato usato il costruttore standard che non inizializza nulla
I metodi get e set sono metodi accessori che accedono in lettura o scrittura ai campi della classe.
riprendendo l'esempio sopra, se poi scrivo:
avrò settato il campo privato "voto" a 7.
I get, come puoi immaginare, altro non sono che metodi che ritornano valori interni alla classe.
Questo è l'uso più basilare dei get e set, oserei dire "banale"