Champs et méthodes privés
La directive private permet de protéger les champs de données et les méthodes des types d'objets contre l'accès d'autres unités.
Après la déclaration des champs et méthodes publics, la directive "private" introduit la déclaration des champs et méthodes privés.
Inversement, la directive "public" peut être utilisée pour déclarer à nouveau des champs publics après des champs et des méthodes privés.
Les parties publiques et privées peuvent alterner selon les besoins dans les types d'objet.
Les composants privés sont visibles partout dans l'unité déclarante - également pour les procédures normales ou les méthodes d'autres types d'objets.
Ils ne sont jamais visibles dans d'autres unités ou programmes, pas même pour les méthodes de types d'objets dérivés.
Exemple:
type obj = object DomainePublic: integer; procedure MethodePublique; virtual; private TerrainPrive: pointer; procedure MethodePrive; virtual; public autre_domaine_public: integer; procedure Autre_MethodePublique; virtual; end;