linguaggio di modellazione specifica per l’object-oriented programming.
diagrammi delle classi
permettono di rappresentare progetti.
- definire la staticità:
<static>
- si può taggare anche il metodo costruttore con
<constructor>
-->
indica la dipendenza generica tra due classi (es. punto e segmento) - la freccia parte dalla classe che dipende e arriva a quella da cui dipende
relazione di estensione
per indicare il fatto che una classe è sottotipo di un’altra classe, si utilizza una freccia
is-a vs has-a
c’è un’importante differenza tra le relazioni del tipo is-a e quelle di tipo has-a:
- is-a rappresenta l’ereditarietà (un oggetto di una sottoclasse può essere trattato come uno della superclasse)
- has-a rappresenta la composizione (un oggetto contiene come membri riferimenti ad altri oggetti)