Una classe UML può definire anche proprietà dinamiche, che si chiamano operazioni (in java metodi).
Le proprietà dinamiche sono valori calcolati ogni volta che servono, a partire dai valori di altre proprietà o attributi.
Operazioni di Classe
Una operazione della classe C indica che su ogni oggetto (istanza) della classe C si può eseguire un calcolo per:
calcolare un valore a partire da altri dati e operazioni
effettuare cambiamenti di stato dell’oggetto (cioè per modificare le sue proprietà), dei link in cui è coinvolto e/o degli oggetti a questo collegati
oss: Il diagramma delle classi non definisce cosa calcolano le operazioni, né se e come modificano i dati. Ogni classe del diagramma con operazioni andrà affiancata da un documento di specifica che entra nel dettaglio.
Sintassi
nome_operazione(argomenti) : tipo_ritorno
argomenti è una lista di elementi della forma nome_argomento : tipo_argomento
tipo_ritorno è il tipo del valore restituito dall’operazione
Una operazione di classe può essere invocata solo su un oggetto della classe.
Ereditarietà
Il meccanismo dell’ereditarietà si applica anche alle operazioni di classe, ad esempio:
In questo caso è possibile chiamare l’operazione madia_fino_A(...) anche su studente straniero.