Un objet est toujours caractérisé par son état, son comportement et son identité :
OBJET = ETAT + COMPORTEMENT + IDENTITE
Exemple :
Une voiture = bleue + 979kg + 12CV + 30 litres
Ceci est une description simplifiée d'un objet voiture tenant compte de la couleur, du poids, de la puissance et de la quantité de carburant.
Un objet se représente graphiquement sous forme d'un rectangle contenant le nom de l'objet. Si on nomme une des voitures "CLI" elle pourra être représentée comme ceci :
Suite de l'exemple après un parcours de 100km :
La voiture = bleue + 979kg + 12CV + 20 litres
L'état regroupe les différentes valeurs des attributs de l'objet. Cet état, à un moment donné, est la conséquence des comportements passés.
On regroupe les objets ayant des caractéristiques communes (attributs communs) ainsi que des comportements communs dans une catégorie que l'on appelle "CLASSE".
Ce concept est étudié dans la paragraphe suivant. Pour rappeler le rattachement d'un objet à une classe, par exemple CLI à la classe VOITURE on fait suivre le nom de l'objet par le nom de la classe. Pour notre exemple :
le nom complet de CLI sera CLI:VOITURE.
Cette règle de nomenclature est utile lorsqu'il s'agit de représenter plusieurs objets provenant de classes différentes.
En UML, on a recours aux diagrammes d'objets pour comprendre et expliquer la dynamique du système à concevoir.
Les objets communiquent entre eux par envoi de messages et collaborent pour réaliser des activités. Ceci sera abordé en détail dans le chapitre "le modèle dynamique".
Représentation de message
Un objet anonyme est représenté par un rectangle dans lequel on inscrit deux points superposés suivi du nom de la classe
Le comportement
En réponse à un message, l'objet destinataire déclenche un comportement. Le message sert de sélecteur pour déterminer l'action à exécuter
Exemple : Tour de contrôle, Un avion (en vol), Un autre avion (au sol). Les deux messages : Atterrir, Décoller.
L'identité
Chaque objet possède une identité qui caractérise son existence propre. L'identité permet de distinguer tout objet de façon non ambiguë indépendamment de son état.
C'est un concept qui ne se représente pas de manière spécifique en modélisation.
L'identité est souvent construite en phase de réalisation, à partir d'un identifiant issu du domaine.
La persistance
Il est utile pour l’application de garder en mémoire l’état de certains objets, ils sont alors appelés persistants (contrairement aux objets transitoires). Les mécanismes de sauvegarde et de restauration diffèrent selon les langages. On parle souvent de sérialisation des objets (mécanisme connu pour le langage Java). Les bases de données peuvent être utilisées pour sauvegarder et faciliter l’accès aux objets de l’application. Celles-ci peuvent être de type relationnel ou purement objet.
Pour les bases de données relationnelles (c'est d'ailleurs les plus utilisées), un mécanisme de conversion entre tables relationnelles et objets est nécessaire.