Sommario
A volte capita che quando realizziamo diagrammi su sistemi estesi, ci rendiamo conto che alcune classi non appartengono alla classe principale, tuttavia, potrebbero essere necessarie alcune operazioni di detta classe principale, il che ci lascia aperte diverse opzioni.Una di queste opzioni è a Interfaccia, questo concetto ci permette di specificare le operazioni in una classe e come presentarle agli altri.
Interfaccia
Il Interfaccia permette di specificare un insieme di operazioni in classe che possono essere utilizzate da altri, è rappresentato allo stesso modo di una classe che utilizza un rettangolo, tuttavia differisce da una classe in quanto non avrà attributi perché sarà solo un insieme di operazioni.
Per distinguere a Interfaccia di una classe con i suoi attributi nascosti, dobbiamo usare la parola interfaccia come stereotipo, o semplicemente porre a io davanti al nome di quell'interfaccia.
Vediamo il seguente esempio di come implementare un'interfaccia nel nostro diagramma:
Come possiamo vedere, l'implementazione di un'interfaccia non è così complessa.
Abbiamo anche un modulo omesso per essere in grado di rendere l'interfaccia All'interno di una classe possiamo vedere questo modulo nell'immagine seguente:
Il visibilità corrisponde al modo in cui mostriamo le operazioni e gli attributi di una classe, ci sono alcuni processi che non dovrebbero essere mostrati ad altre classi, quindi abbiamo deciso di renderli privati, questo soddisfa una delle condizioni dell'orientamento agli oggetti che è il incapsulamento.
Abbiamo 3 livelli di visibilità che sono i seguenti:
- Pubblico: questo può essere visto da qualsiasi altra classe e per specificarlo lo demarcamo con un segno +.
- Protetto: questo può essere visto solo dalla classe originale e da tutte quelle che da essa ereditano, lo contrassegniamo con il #.
- Privato: Solo la classe originale può vederlo ed è delimitato da un -.
Vediamo il seguente esempio di come specificare la visibilità delle operazioni e degli attributi di una classe: