Uma classe é um elemento de diagrama UML (Linguagem de Modelagem Unificada) que representa um elemento de aplicativo. Um elemento de aplicativo pode ser representado por várias instâncias de uma classe em um ou mais diagramas.
Utilize classes para ilustrar conceptualmente elementos de aplicativo relacionados em diagramas. Um elemento de diagrama de classe mostra toda ou parte da semântica subjacente. Um elemento de diagrama de classe identifica os atributos, operações, relacionamentos e semânticas que as instâncias da classe possuem. Todo objeto que instancia uma classe geralmente fornece seus próprios valores de atributos. Os atributos também são chamados de variáveis, variáveis do membro, propriedades e campos, mas são geralmente implementados como variáveis.
Cada elemento de diagrama de classe tem propriedades que controlam sua aparência e localização em um diagrama. Modificar as propriedades de um elemento de diagrama altera somente a aparência do elemento e não afeta a semântica subjacente ou qualquer outro elemento do diagrama que represente esse elemento do aplicativo.
Conforme ilustrado na figura a seguir, uma classe é exibida em um diagrama como um retângulo com três compartimentos:
Você pode mostrar, ocultar ou reduzir os compartimentos de atributos e de operações. Você pode utilizar compartimentos para exibir outros detalhes, como restrições ou sinais que as instâncias da classe podem receber.
As classes em um aplicativo geralmente aparecem em diagramas de classe. É possível incluir classes ou instâncias de classes (objetos ou funções de classificador) em diagramas para representar os seguintes itens:
Um aplicativo de e-commerce poderia incluir uma classe Cart. A classe define um atributo itemList e uma operação addItem que pertencem a todos os objetos do tipo Cart. Em tempo de execução, várias instâncias da classe Cart podem ser criadas, cada uma delas possuindo os atributos e operações definidos pela classe. Os valores dos atributos para cada instância diferirão se, por exemplo, um objeto de classe chamar a operação addItem para incluir vídeos em seu atributo itemList, enquanto uma outra instância utilizar a mesma operação para incluir livros.