Protege - Définition de la partie protégée d'un type

Attribut de Type. Définition d'une partie protégée du type.

Attribut de HeriteDe. Définition d'un héritage protégé d'une liste de types.

Syntaxe

Protege :

Protege :

Description

Utilisée dans une définition de type, Protege permet de spécifier que tous les propriétés et les méthodes qui suivent sont protégés. La portée de cette déclaration est valable jusqu'au prochain Public ou Prive. Les définitions protégées sont uniquement visibles des méthodes du type en cours ou des méthodes des types héritants du type en cours. Elles ne seront pas visibles des traitements en dehors du type.

La section protégée n'est pas obligatoire pour un type.

Utilisée dans un héritage avec HeriteDe, Protege permet de spécifier que l'héritage est protégé : les propriétés et les méthodes publics ou protégés hérités ont leur encapsulation protégée. En ce cas, ils sont visibles des méthodes du type en cours et des méthodes des types héritants. En revanche, ils ne sont pas visibles des traitements en dehors du type.

Exemple

Type TA
/*****/
Public : Protege : Prive : Fin Type
/* 'CA' et 'MA' font partie de la section publique. 'CB' et 'MB' font partie de la section protegee. 'CC' et 'MC' font partie de la section privee. 'MA', 'MB' et 'MC' peuvent utiliser 'CA', 'MA', 'CB', 'MB', 'CC' et 'MC'. */

Type TB HeriteDe Protege : TA
/***************************/
Public : Fin Type
/* 'TB' herite de 'TA' de façon protegee. En consequence, 'MD' peut utiliser 'CA', 'MA', 'CB', 'MB'. */

Variable
/******/

/****************************************************************/
Procedure P()
/* Objet : 'P' peut uniquement utiliser la partie publique de 'A'. En consequence, 'P' peut utiliser 'CA' et 'MA'. */
/* 'P' peut uniquement utiliser la partie publique de 'B'. En consequence, 'P' peut utiliser 'CD' et 'MD'. */
/****************************************************************/
Debut
...
Fin Procedure

Voir aussi

Public et Prive pour connaître les autres types d'encapsulation ou d'héritage.

Traduction

---------