FabioJ ha scritto:
ho capito a cosa serve il setter
Per esempio se voglio cambiare un attributo di un oggetto uso il setter .
Aggiungo una cosa importante, di "background" generale. Hai già visto che ci possono essere metodi "getter" e "setter" fatti come per es.:
String getModello()
void setModello(String modello)
Perché non li hanno chiamati es. retrieveModello/assignModello o che altro? Per via di alcune "convenzioni" dettate da una specifica chiamata "JavaBeans API specification" definita nel lontano 1996 che descrive un modello di componenti che espongono proprietà, eventi e altro. Questi componenti sono detti "bean" Java.
Se un oggetto ha i metodi come quelli indicati, allora viene desunta una proprietà "
modello" (m minuscola) di tipo String.
Questa specifica, almeno a livello basilare riguardo le proprietà, viene usata e rispettata ormai da tantissime librerie e framework. In pratica tutti i framework che fanno mapping tra classi, mapping tra classi e formati di file (es. JSON, XML), nelle pagine JSP con i custom-tag e sicuramente altro che ora non mi viene in mente.
Quindi se vedi metodi come quelli sopra, basta che sai che il "getter" (es. getModello) ti permette di estrarre una informazione dall'oggetto mentre il "setter" (es. setModello) ti permette di settare una informazione nell'oggetto.
Non necessariamente ci sono sempre tutti e due. Può esserci solo il getter, nel qual caso quella informazione è (se non ci sono altri inghippi) a "sola lettura". E' raro (ma non impossibile) che ci sia solo il setter.
FabioJ ha scritto:
Sei il migliore senza togliere niente a andbin .
Siamo entrambi competenti e in gamba, lui (migliorabile) ha più nozioni di me in ambito teorico. Io ad esempio la "teoria dei grafi" (per dirne una ..) non l'ho mai affrontata particolarmente. Ma tieni presente che io non ho fatto l'università.