|
|
Le seguenti regole definiscono una strategia semplice per la generazione degli oggetti immutable. Non tutti i codici categoria documentati come "immutable" seguono queste regole. Ciò necessariamente non significa che i creatori di questi codici categoria erano sloppy possono avere buon motivo per credere che i casi dei loro codici categoria non cambino mai dopo costruzione. Tuttavia, tali strategie richiedono l'analisi specializzata e non sono per i principianti.
1. Non fornisca i metodi "dell'incastonatore", metodi che modificano i campi o gli oggetti citati dai campi.
2. Renda tutti i campi finali e riservati.
3. Non lasci che le sottoclassi escludano i metodi. Il senso più semplice fare questo deve dichiarare il codice categoria come finale. Un metodo più specializzato deve rendere il costruttore riservato e costruire i casi nei metodi della fabbrica.
4. Se i campi di caso includono i riferimenti agli oggetti mutable, non lasci che quegli oggetti siano cambiati:
Non fornisca i metodi che modifichino gli oggetti mutable.
Non ripartisca i riferimenti agli oggetti mutable. Non memorizzi mai i riferimenti agli oggetti esterni e mutable passati al costruttore; se necessario, generi le copie e memorizzi i riferimenti alle copie. Similmente, generi le copie dei vostri oggetti mutable interni se necessario evitare di restituire gli originali nei vostri metodi.
Online: 735 users browsing the articles directory
|
|