Quelle est la différence entre privé et protégé? [dupliquer]

possibilité de dupliquer:

membres privés et protégés: c++

Je ne comprends pas la différence entre les membres protégés et les membres privés ou les méthodes, car j'ai supposé que les deux vont cacher le membre ou la fonction d'accès de l'extérieur de la classe.

Quelle est la différence entre le protégé et privé de mots-clés?

31
demandé sur Community 2012-10-08 18:45:43

5 réponses

private - uniquement disponible pour être consulté dans la classe qui les définit.

protected - accessible dans la classe qui les définit et dans d'autres classes qui héritent de cette classe.

55
répondu lifetimes 2012-10-08 14:47:22

les choses qui sont private ne sont visibles qu'à l'intérieur de la classe elle-même.

les Choses qui sont protected sont visibles dans la classe elle-même et dans les sous-classes.

6
répondu Jesper 2012-10-08 14:47:40

les méthodes privées sont généralement visibles par les instances de classe (implémentations internes), les méthodes protégées sont visibles par les sous-classes et les classes dans le même paquet (héritage et usage restreint).

2
répondu Fabio 2012-10-08 14:51:08

les membres privés ne peuvent être utilisés que par les membres de cette classe et ses amis; les membres protégés peuvent être hérités par d'autres classes, et peuvent être utilisés par les membres de la classe et ses amis.

2
répondu b3h3m0th 2012-10-08 14:53:11

la différence est qui peut accéder à ces fonctions.

  • Private = seuls les membres de la même classe peuvent accéder à la fonction.

  • Protected = comme les classes privées mais dérivées peuvent également y accéder.

1
répondu akrabi 2017-09-28 07:25:26