PDA

Visualizza la versione completa : [java]Modificatori..


alfdev
19-04-2005, 11:37
Salve, sto studiano java 2 da un libro ma quando mi spiega i modificatori transient e volatile si perde un pò. Volevo chiedere a qualcuno se può spiegarmi brevemente questi 2 modificatori.

grazie 1000

Pablob
19-04-2005, 11:47
un attributo transient è un attributo che non verrà mai serializzato (Quindi se serializzi l'oggetto su disco e poi lo recuperi, l'attributo non sarà valorizzato).
http://mindprod.com/jgloss/transient.html

un attributo volatile indica al compilatore che l'attributo in questione è oggetto di accesso / modifica da parte di Threads differenti, e quindi non deve fare assunzioni per quanto riguarda l'ottimizzazione (caching del valore).
http://mindprod.com/jgloss/volatile.html

floyd
19-04-2005, 11:50
una variabile se è transient non fa parte della serializzazione di un oggetto
http://java.sun.com/docs/books/jls/second_edition/html/classes.doc.html#78119
una variabile volatile si riallinea ad ogni accesso da parte di thread concorrenti
http://java.sun.com/docs/books/jls/second_edition/html/classes.doc.html#36930
che spiegazione completa :stordita:

alfdev
19-04-2005, 12:07
...il transient mi è abbastanza chiaro, sapevo che nn era serializzabile.
volatile devo approfondire un po', cmq grazie 1000 a tutti e due...

Loading