Dans les diagrammes de classe, une relation de droit d'accès est une relation dans laquelle une classe en autorise une autre à visualiser ses attributs ou opérations encapsulés.
En langage C/C++, une relation particulière permet à une classe d'autoriser une autre classe à accéder à sa zone de données privée. La classe ayant obtenu le droit d'accès devient une amie de la classe partagée. Elle a ainsi accès à toutes ses données et méthodes.
Par exemple, une classe Customer permet à une classe Account d'utiliser les informations personnelles du client. La classe Account devient une amie de la classe Customer. Cette relation facilite l'exécution des tâches dévolues à la classe Account étant donné qu'elle a obtenu le droit d'accès à la classe Customer.
Comme l'illustre la figure du tableau ci-dessous, une relation de droit d'accès s'affiche sous la forme d'une ligne tiretée entre les classes avec une pointe de flèche ouverte pointant vers la classe amie, ou vers les classes qui sont autorisées à accéder aux données et méthodes privées de la classe partagée.
Code source C/C++ | Visualisation UML |