15.06.2013 Views

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

Dispensa in PDF - Dipartimento di Scienze Ambientali, Informatica e ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Carnielli Efrem: Programmazione a componenti<br />

Def<strong>in</strong>izione ed uso <strong>di</strong> classi, oggetti ed <strong>in</strong>terfacce<br />

Voglio sfruttare un meccanismo <strong>di</strong> serializzazione (marsall<strong>in</strong>g) che consiste nel<br />

portare gli oggetti da qualche parte <strong>in</strong> modo <strong>di</strong> poterli usare <strong>in</strong> seguito.<br />

La memoria serializza b ed a nel file system come <strong>in</strong> figura.<br />

a<br />

M em oria<br />

3<br />

b 2<br />

4<br />

Figura 7.2. Serializzazione degli oggetti <strong>in</strong> memoria<br />

A questo punto vado a recuperare i due oggetti dalla memoria, essi non puntano<br />

più allo stesso oggetto come avveniva <strong>in</strong> precedenza.<br />

a<br />

3<br />

b 2<br />

4<br />

Figura 7.3. Gli oggetti non con<strong>di</strong>vidono più un riferimento<br />

Questo significa che se <strong>in</strong> a vado a mo<strong>di</strong>ficare il 4 <strong>in</strong> 5, l’oggetto b non vede la<br />

mo<strong>di</strong>fica mentre prima della serializzazione si.<br />

Come abbiamo visto <strong>in</strong> UML esiste una simbologia per <strong>in</strong><strong>di</strong>care le classi e le<br />

relazioni che si <strong>in</strong>staurano tra <strong>di</strong> esse. Un oggetto è un’istanza <strong>di</strong> una classe, qu<strong>in</strong><strong>di</strong><br />

un <strong>di</strong>agramma <strong>di</strong> classe ci da <strong>in</strong>formazioni sostanziale sugli oggetti.<br />

4<br />

4<br />

166

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!