Déclarations privées, protégées, publiques et publiées
Remonter à Portée et qualificateurs
La déclaration du type d'une classe peut posséder trois ou quatre sections pour contrôler l'accessibilité de ses champs et de ses méthodes :
Type TClassName = Class(TObject) public {public fields} {public methods} protected {protected fields} {protected methods} private {private fields} {private methods} end;
- La section publique déclare les champs et les méthodes sans aucune restriction d'accès. Les instances de classes et les classes dérivées peuvent accéder à ces champs et ces méthodes. Un membre public est accessible partout où la classe à laquelle il appartient est accessible, c'est-à-dire à partir de l'unité dans laquelle la classe est déclarée et à partir de toute unité utilisant cette unité.
- La section protégée inclut les champs et les méthodes avec une certaine restriction d'accès. Un membre protégé est accessible à partir de l'unité dans laquelle sa classe est déclarée ainsi qu'à partir de toute classe dérivée, quelle que soit l'unité de la classe dérivée.
- La section privée déclare les champs et les méthodes qui possèdent de fortes restrictions d'accès. Un membre privé est accessible uniquement dans l'unité dans laquelle il a été déclaré. Les membres privés sont souvent utilisés dans une classe pour implémenter d'autres méthodes et propriétés (publiques ou publiées).
- Pour les classes qui dérivent de TPersistent, , une section publiée déclare les propriétés et les événements disponibles lors de la conception. Un membre publié a la même visibilité qu'un membre public mais le compilateur génère des informations de type à l'exécution pour les membres publiés. Les propriétés publiées apparaissent dans l'inspecteur d'objets à la conception.
Lorsque vous déclarez un champ, une propriété ou une méthode, le nouveau membre est ajouté à l'une de ces quatre sections, ce qui lui donne sa visibilité : privée, protégée, publique ou publiée.