Como especificar visibilidade em diagramas de classes UML

Notação de classe UML

As classes representam o conceito de encapsulamento de estado (atributos) e comportamento (operações). Cada atributo tem um tipo. Cada operação tem um assinatura. O nome da classe é a única informação obrigatória.

UML Class Notation

A encapsulação é o princípio de ocultação de dados: um objeto esconde seus dados do acesso externo e permite apenas que entidades externas manipulem os dados chamando os métodos do objeto.

O grau de encapsulamento dos elementos de uma classe depende do nível de visibilidade do elemento. A visibilidade de uma propriedade ou operação especifica se objetos de outras classes podem “ver” ou acessar essa propriedade ou operação.

O UML suporta os seguintes quatro níveis de visibilidade:

Os caracteres ~, +, # e – colocados antes do nome de um atributo ou operação em uma classe indicam sua visibilidade:

  • Visibilidade de pacote (representado pelo til (~)) significa que qualquer objeto de uma classe dentro do mesmo pacote pode ver e usar a classe fornecida.
  • Visibilidade pública (+) significa que qualquer objeto de qualquer classe pode usar o atributo ou operação fornecido.
  • Visibilidade protegida (#) significa que apenas objetos de subclasses da classe fornecida (ou seja, classes mais baixas na hierarquia) podem acessar o atributo ou operação.
  • Visibilidade privada (-) significa que apenas objetos da própria classe podem usar o atributo ou operação.

A imagem a seguir mostra os modificadores de visibilidade para atributos e operações de exemplo:

Class Visibility

Linguagem Unificada de Modelagem (UML)

Leave a Reply