Table des matières:
Définition - Que signifie protégé?
Protégé, en C #, est un mot clé utilisé pour déclarer l'accessibilité d'un membre de classe de telle sorte que l'accès à ce membre est limité à la classe conteneur dans laquelle il est déclaré ou à toute classe dérivée de la classe conteneur. L'accessibilité protégée peut être utilisée dans les déclarations de champ, de méthode et de propriété pour les empêcher d'être entièrement visibles en dehors de leur classe.
Protégé est un modificateur d'accès qui permet au membre d'une classe d'être plus visible que privé mais inférieur à l'accessibilité publique. Les membres protégés d'une classe de base ne peuvent être partagés que par leurs descendants, qui peuvent les remplacer ou les utiliser.
Le modificateur protégé aide à implémenter le concept d'encapsulation dans la programmation orientée objet C #. Il est principalement utilisé avec les membres d'une classe de base qui sont réutilisés dans la classe dérivée, ce qui permet de centraliser la logique commune avec une hiérarchie de classes riche.
Techopedia explique Protected
Un membre protégé ne peut être accessible dans la classe dérivée que si l'accès a lieu via la classe dérivée. Si elle doit être accessible depuis l'extérieur du texte du programme de la classe dans laquelle elle est déclarée, elle doit l'être via une instance de type dérivé ou un type de classe construit à partir de celle-ci.
Par exemple, la classe BankAccount représente les détails du compte d'un utilisateur et peut définir une méthode, CalculateInterest, comme protégée afin que toute classe dérivée de la classe BankAccount (comme SavingsAccount, CheckingAccount, etc.) puisse remplacer la méthode CalculateInterest avec le code nécessaire pour calculer les intérêts en fonction du type de compte.
Un membre protégé ne peut pas être utilisé avec un modificateur statique car il n'est accessible que via une instance. Un modificateur protégé ne peut pas être utilisé avec les membres d'une structure car l'héritage n'est pas pris en charge par la structure.
Une méthode protégée peut être déclarée avec le modificateur "virtuel" pour étendre la logique qui doit être exécutée pour la spécialisation dans la classe dérivée.
Cette définition a été écrite dans le contexte de C #