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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Carnielli Efrem: Programmazione a componenti<br />

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

dove verrà compilato il co<strong>di</strong>ce è presente un solo file math.h non uno per ogni<br />

programma che lo utilizza. L’istanza viene creata al momento del suo utilizzo e<br />

<strong>di</strong>strutta al term<strong>in</strong>e dello stesso. L’unica cosa che potrebbe variare tra due<br />

componenti uguali è il serial number (SN) come avviene per le componenti COM<br />

<strong>di</strong> Microsoft. In Java, una classe è una componente mentre un oggetto è un’istanza<br />

<strong>di</strong> una classe.<br />

7.1 Caratterizzazione <strong>di</strong> un oggetto<br />

Un oggetto:<br />

1. è un’unità <strong>di</strong> istanziazione, un’unità <strong>in</strong> quanto può essere creato come<br />

entità unica.<br />

2. ha uno stato <strong>in</strong><strong>di</strong>pendente (che può essere “persistente”). Un oggetto<br />

ha una sua identità immutabile nel tempo, viene def<strong>in</strong>ito come<br />

mutable istance, cioè un’istanza mutabile nel tempo.<br />

3 <strong>in</strong>capsula il suo stato e il suo funzionamento.<br />

Un oggetto ha una sua identità e si <strong>di</strong>st<strong>in</strong>gue da un altro oggetto anche se è uguale.<br />

Cont<strong>in</strong>uando l’esempio precedente delle str<strong>in</strong>ghe, considero l’oggetto a uguale alla<br />

str<strong>in</strong>ga “ciao” e l’oggetto b anch’esso uguale alla str<strong>in</strong>ga “ciao”. I due oggetti sono<br />

uguali eppure hanno identità <strong>di</strong>verse, possono avere evoluzioni completamente<br />

<strong>di</strong>verse.<br />

Facciamo ora un altro esempio.<br />

Figura 7.1. Oggetti con riferimento <strong>in</strong> comune<br />

a<br />

b<br />

3<br />

2<br />

Ho due oggetti a e b che contengono un <strong>in</strong>tero e poi hanno un riferimento <strong>in</strong><br />

comune ad un altro <strong>in</strong>tero.<br />

4<br />

165

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

Saved successfully!

Ooh no, something went wrong!