Ottieni e imposta il metodo in Java

I metodi

operazione

I metodi getter e setter, o metodi di "accesso", forniscono accesso alle proprietà di un oggetto. Un metodo get restituisce il valore di una proprietà di un oggetto. Un metodo get ha un tipo restituito correlato al tipo di variabile membro associato. I metodi get solitamente non prendono alcun parametro. Un metodo set ha un tipo di ritorno "void" e accetta un parametro del tipo appropriato da assegnare alla variabile membro associata.

convenzioni

I metodi di accesso sono usati dagli oggetti esterni e quindi sono dichiarati come metodi "pubblici" (esternamente visibili). La convenzione accettata consiste nel denominare get e impostare i metodi per la variabile membro associata (ad esempio, "getName" e "setName", associati alla variabile "nome"), con il prefisso "get" o "set". Non tutte le variabili membro possono avere metodi di accesso associati. Questi metodi sono scritti solo per i valori a cui è necessario accedere esternamente.

scopo

Limitare l'accesso alle variabili membro di un oggetto fa parte di una pratica nota come "incapsulamento". L'incapsulazione compartimentalizza i componenti di un oggetto, nascondendo l'implementazione (lavoro interno) dell'oggetto che non deve essere visibile esternamente e protegge i dati interni dalle modifiche senza autorizzazione. I metodi di accesso possono eseguire calcoli, convalide o altre azioni che potrebbero essere evitate rendendo le variabili membro direttamente accessibili.

benefici

La protezione delle variabili membro che utilizza i metodi di accesso consente ai programmatori di modificare facilmente il codice interno senza modificare il modo in cui la classe viene utilizzata da altri. Ciò evita la necessità di apportare modifiche al codice tramite un'applicazione quando viene modificata una classe. I getter possono eseguire calcoli e azioni necessarie per produrre un valore, riducendo al minimo la quantità di codice esterno necessario per utilizzare il valore. I setter possono eseguire la convalida e prevenire errori causati da variabili membro che stabiliscono valori non validi.

considerazioni

Aggiungere metodi di accesso a una classe dovrebbe essere fatto in modo conservativo. Solo le variabili membro che richiedono accesso esterno devono avere metodi di accesso. Le proprietà che devono essere modificate solo da operazioni interne non hanno bisogno di setter. Le proprietà che non hanno rilevanza esterna non dovrebbero avere getter. Questa pratica riduce al minimo l'esposizione dell'implementazione di un oggetto e protegge le proprietà dalle modifiche che potrebbero introdurre errori di esecuzione. Meno metodi pubblici ci sono, più facile è mantenere il codice.