Classe scellée

Auteur: Lewis Jackson
Date De Création: 8 Peut 2021
Date De Mise À Jour: 25 Juin 2024
Anonim
Classe scellée - La Technologie
Classe scellée - La Technologie

Contenu

Définition - Que signifie classe scellée?

Une classe scellée, en C #, est une classe qui ne peut être héritée par aucune classe, mais peut être instanciée.


L'intention de conception d'une classe scellée est d'indiquer que la classe est spécialisée et qu'il n'est pas nécessaire de l'étendre pour fournir une fonctionnalité supplémentaire via l'héritage afin de remplacer son comportement. Une classe scellée est souvent utilisée pour encapsuler une logique qui doit être utilisée dans le programme, mais sans aucune modification.

Une classe scellée est principalement utilisée pour des raisons de sécurité en empêchant toute dérivation non intentionnelle par laquelle la classe dérivée peut corrompre l'implémentation fournie dans la classe scellée. Comme la classe scellée ne peut pas former une classe de base, les appels aux classes scellées sont légèrement plus rapides car ils permettent certaines optimisations à l'exécution, telles que l'appel de fonctions de membre virtuel sur des instances de la classe scellée dans des invocations non virtuelles. La classe scellée facilite la gestion des versions en ne rompant pas la compatibilité lors du changement de classe du type scellé à non scellé.


Certaines des classes clés de la bibliothèque .NET Framework sont conçues comme des classes scellées, principalement pour limiter l’extensibilité de ces classes.

Introduction à Microsoft Azure et au nuage Microsoft | Tout au long de ce guide, vous apprendrez ce qu'est le cloud computing et comment Microsoft Azure peut vous aider à migrer et à exploiter votre entreprise à partir du cloud.

Techopedia explique la classe scellée

Contrairement à une structure, qui est implicitement scellée, une classe scellée est déclarée avec le mot-clé "scellé" afin d'empêcher l'héritage accidentel de la classe. Une classe scellée ne peut être utile que si elle dispose de méthodes avec une accessibilité de niveau public. Une classe scellée ne peut pas être une classe abstraite, cette classe étant destinée à être dérivée par une autre classe assurant l'implémentation des méthodes et propriétés abstraites.


Par exemple, une classe scellée, DatabaseHelper, peut être conçue avec des propriétés et des méthodes capables de gérer les fonctionnalités des actions liées à la base de données, notamment les connexions ouverte et fermée à la base de données, l'extraction et la mise à jour des données, etc. ne pas être altéré en remplaçant dans ses classes dérivées, il peut être conçu comme classe scellée.

Le scellement limite les avantages de l'extensibilité et empêche la personnalisation des types de bibliothèque. Par conséquent, une classe doit être scellée après avoir soigneusement pesé son impact. La liste des critères à prendre en compte pour sceller une classe comprend:
  • La classe est statique
  • La classe contient des membres hérités qui représentent des informations sensibles
  • On demande à la classe de récupérer ses attributs via la méthode de réflexion
  • La classe hérite de nombreux membres virtuels qui doivent être scellés
Cette définition a été écrite dans le con de C #