Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Java Programming >> .

Come creare un oggetto immutabile in Java

Un oggetto immutabile in programmazione , una volta che hai creato e inizializzato , non potrà mai cambiare il suo stato . Questo può sembrare controproducente, dal momento che il punto della programmazione è quello di manipolare i dati . Tuttavia, per la progettazione delle classi di eliminare i luoghi dove i loro dati possono cambiare , è possibile rimuovere intere categorie di potenziali problemi dal programma. In questo modo i dati sono sempre validi e le classi sono automaticamente thread-safe , e non dovete preoccuparvi di dimenticare per inizializzare i membri della tua classe . Cose che ti serviranno
ambiente di sviluppo integrato (IDE) come Eclipse o NetBeans
Show More Istruzioni
1

dichiarare la classe di finale :

MyClass { public final

...

}

Questo impedisce l'ereditarietà della classe, che può minare la sua immutabilità .
2

dichiarare i tuoi campi membro come finale :

...

private int Thenumber finale ;

private String theName finale ;

...

Ciò impone al compilatore di assicurare i campi membro non cambiano dopo l'inizializzazione
3

Inizializzare i campi membro del costruttore : .

MyClass pubblico (int Thenumber , String theName ) {

this.theNumber = Thenumber ;

this.theName = theName ;

}
4

Aggiungi ottenere metodi per consentire l'accesso ai campi :

...

int getTheNumber pubblico ( ) { Thenumber return; }

public String getTheName ( ) { theName return;}

5

Aggiungi logica di convalida al costruttore per garantire che crea correttamente il vostro oggetto . Ad esempio, se il codice prevede Thenumber di essere sempre compreso tra 0 e 100 , è possibile verificare che e genera un'eccezione ( opere IllegalArgumentException ) .

MyClass pubblico (int Thenumber , String theName ) {

se ( Thenumber < =

this.theNumber = Thenumber ;

this.theName = theName ;

}

Questo passaggio consente di sapere ogni casi effettivi di classe sono validi .
6

Per evitare la noia di inizializzazione ogni campo nel costruttore di classi con un numero elevato di campi membro , refactoring in piccoli " oggetti parametro . " Creando più piccolo oggetti che contengono i dati necessari in gruppi logici , si riduce il numero di parametri nella firma del costruttore , pur mantenendo l'immutabilità .

 

Programmazione © www.354353.com