Une classe UML identifie les attributs, les opérations, les relations et la sémantique que les instances de la classe possèdent. Chaque objet qui instancie une classe fournit généralement ses propres valeurs d'attribut. Les attributs sont aussi appelés variables, variables membre, propriétés et zones, mais sont généralement implémentés comme des variables. Dans un diagramme, chaque classe a des propriétés qui régissent sa présentation et son emplacement. La modification des propriétés d'une classe dans un diagramme modifie uniquement la présentation de la forme et n'affecte pas la sémantique sous-jacente, ni aucune autre forme représentant cet élément d'application.

Vous pouvez utiliser des compartiments supplémentaires pour afficher d'autres détails, tel que des contraintes ou des signaux que les instances de la classe peuvent recevoir.
Dans une application, les classes apparaissent généralement dans des diagrammes de classes. Les classes ou instances de classes, telles que les objets ou rôles de discriminant, apparaissent aussi fréquemment dans d'autres types de diagrammes, tels que des diagrammes de séquence. Vous pouvez ajouter des classes aux diagrammes pour représenter les éléments suivants :
Une application de commerce électronique comprend une classe Cart (panier). Cette classe définit un attribut itemList et une opération addItem qui appartient à tous les objets de type Cart. En phase d'exécution, plusieurs instances de la classe Cart sont créées, chacune possédant les attributs et opérations que la classe définit. Les valeurs des attributs pour chaque instance diffèrent si, par exemple, un objet de classe appelle l'opération addItem pour ajouter des vidéos à son attribut itemList, tandis qu'une autre instance utilise la même opération pour ajouter des livres.