Membres de la classe

Définition - Que signifient les membres du groupe?

Les membres de classe, en C #, sont les membres d'une classe qui représentent les données et le comportement d'une classe.

Les membres de classe sont des membres déclarés dans la classe et tous ceux (à l'exclusion des constructeurs et des destructeurs) déclarés dans toutes les classes de sa hiérarchie d'héritage.

Les membres du cours peuvent être des types suivants:

  • Constantes représentant des valeurs constantes
  • Champs représentant des variables
  • Méthodes fournissant des services comme le calcul ou d'autres actions sur ses membres
  • Propriétés qui définissent les caractéristiques de la classe et incluent des actions pour les récupérer et les modifier
  • Événements générés pour communiquer entre différentes classes / objets
  • Indexeurs qui aident à accéder aux instances de classe similaires aux tableaux
  • Opérateurs qui définissent la sémantique lorsqu'ils sont utilisés dans des expressions avec des instances de classe
  • Constructeurs d'instances pour initialiser les membres des instances de classe
  • Constructeur statique pour initialiser la classe elle-même
  • Destructeurs pour exécuter les actions nécessaires à effectuer avant que les instances de classe ne soient rejetées
  • Types locaux de la classe (type imbriqué)

Les membres de la classe peuvent être spécifiés individuellement avec l'une des accessibilités suivantes:

  • Public - accessible par n'importe quel code dans l'assembly actuel ou externe
  • Protégé - accessibilité dans la même classe ou sa classe dérivée
  • Privé - accessibilité dans la même classe
  • interne - accessibilité dans l'assemblage actuel
  • protected internal - accessibilité dans l'assembly actuel ou les classes dérivées de la classe conteneur

Contrairement à Java où le niveau d'accessibilité par défaut d'un membre de classe est public, il est privé en C #.

Definir Tech explique les membres de la classe

Les membres de classe sont initialisés dans des constructeurs qui peuvent être surchargés avec différentes signatures. Pour les classes qui n'ont pas de constructeur, un constructeur par défaut qui initialise les membres de la classe (aux valeurs par défaut) sera généré.

Contrairement à C ++, C # permet à une classe d'hériter d'une seule classe de base. Cependant, une classe peut dériver de plusieurs interfaces mais tous les membres de l'interface doivent être implémentés. Ces membres de la ou des interfaces d'implémentation de classe ont une visibilité publique par défaut et ne peuvent pas avoir d'autres modificateurs d'accès.

Tous les membres de la classe de base à l'exception des constructeurs sont hérités dans la classe dérivée. Les membres de classe dérivés peuvent masquer le membre de classe de base pour lequel le mot clé «new» doit être utilisé pour indiquer que le membre de base n'est pas remplacé et éviter les avertissements du compilateur.

Un membre de classe statique est un membre de classe statique (qui ne peut être instancié ni hérité) auquel il est possible d'accéder uniquement à l'aide du nom de classe. Contrairement au membre d'instance, il a une copie du membre statique qui est initialisé avant son premier accès et avant son constructeur statique (le cas échéant).

Les membres de la classe abstraite empêchent l'instanciation directe et doivent être implémentés dans une classe dérivée pour être utilisée. Pour empêcher une classe ou des membres de classe d'hériter, la classe ou ses membres peuvent être déclarés comme «scellés». Les membres de la classe peuvent être utilisés en tant que constante 'au moment de la compilation' en utilisant le modificateur 'const' et en tant que constantes d'exécution en utilisant le modificateur 'readonly'.

Lors de la déclaration de membres de classe dans un nouvel espace de déclaration, les règles suivantes s'appliquent:

  • À l'exception des constructeurs et des destructeurs, tous les autres membres doivent avoir un nom différent du nom de la classe
  • Les noms de constante, de champ, de propriété, d'événement ou de type doivent être uniques dans la classe
  • Plusieurs méthodes peuvent être déclarées avec le même nom mais doivent différer par leur signature
  • La signature de l'indexeur et de l'opérateur doit être unique parmi celles déclarées dans la classe
  • Les membres de la classe ne peuvent pas avoir de signatures réservées qui sont des noms de membres réservés pour les propriétés, les événements, l'indexeur et «Finaliser»
  • Le type d'un membre, le paramètre et la valeur de retour d'une méthode, d'un délégué ou d'un indexeur doivent être accessibles en tant que membre lui-même
  • Les opérateurs définis par l'utilisateur doivent avoir un niveau d'accessibilité public

Cette définition a été écrite dans le contexte de C #