Classes du système de type commun

Mise à jour : novembre 2007

Si vous connaissez bien la programmation orientée objet, vous savez qu'une classe définit les opérations qu'un objet peut effectuer (méthodes, événements ou propriétés) et définit une valeur qui contient l'état de l'objet (champs). Bien qu'une classe inclue généralement la définition et l'implémentation, elle peut comporter un ou plusieurs membres dépourvus d'implémentation.

Une instance d'une classe est un objet. Vous accédez à la fonctionnalité d'un objet en appelant ses méthodes et en accédant à ses propriétés, événements et champs.

Le tableau suivant présente une description de certaines caractéristiques que le runtime autorise pour une classe. (Les caractéristiques supplémentaires disponibles par le biais de classes d'attributs ne sont pas incluses dans cette liste.) Il se peut que votre langage ne mette pas toutes ces caractéristiques à disposition.

Caractéristique

Description

sealed

Spécifie qu'un autre type ne peut pas être dérivé à partir de ce type.

implements

Indique que la classe utilise une ou plusieurs interfaces en fournissant des implémentations des membres d'interface.

abstract

Spécifie vous ne pouvez pas créer une instance de la classe. Pour l'utiliser, vous devez dériver une autre classe de celle-ci.

inherits

Indique que des instances de la classe peuvent être utilisées partout où la classe de base est spécifiée. Une classe dérivée qui hérite d'une classe de base peut employer l'implémentation de n'importe quelle méthode virtuelle fournie par la classe de base ou la classe dérivée peut les substituer par sa propre implémentation.

exported ou not exported

Indique si une classe est visible à l'extérieur de l'assembly dans lequel elle est définie. S'applique uniquement aux classes de niveau supérieur.

Les classes imbriquées ont également des caractéristiques de membre. Pour plus d'informations, consultez Membres de types.

Les membres de classe sans implémentation sont des membres abstraits. Une classe qui possède un ou plusieurs membres abstraits est elle-même abstraite ; il n'est pas possible d'en créer de nouvelles instances. Certains langages qui ciblent le runtime vous permettent de marquer une classe comme abstraite même si aucun de ses membres n'est abstrait. Vous pouvez utiliser une classe abstraite lorsque vous devez encapsuler un ensemble de fonctionnalités de base dont des classes dérivées peuvent hériter ou qu'elles peuvent substituer lorsque cela est approprié. Les classes qui ne sont pas abstraites sont qualifiées de classes concrètes.

Une classe peut implémenter n'importe quel nombre d'interfaces, mais elle ne peut hériter que d'une seule classe de base. Toutes les classes doivent avoir au moins un constructeur qui initialise de nouvelles instances de la classe.

Chaque langage prenant en charge le runtime dispose d'un procédé pour indiquer qu'une classe ou un membre d'une classe a des caractéristiques spécifiques. Lorsque vous utilisez la syntaxe requise par votre langage, ce dernier garantit que les caractéristiques de la classe et de ses membres sont stockées (sous la forme de métadonnées) avec l'implémentation de la classe.

Voir aussi

Concepts

Interfaces du système de type commun

Référence

System.Object

Autres ressources

Système de type commun

Métadonnées et composants autodescriptifs