Maison > Article > développement back-end > Introduction détaillée à plusieurs utilisations de new en C#
Cet article présente principalement plusieurs utilisations de new en C#, qui a une bonne valeur de référence. Regardons-le avec l'éditeur.
En C#, le mot-clé new Can be. utilisé comme opérateur, modificateur ou contrainte. Le
nouvel opérateur
est utilisé pour créer des objets et appeler le constructeur.
nouveau modificateur
est utilisé pour masquer les membres hérités des membres de la classe de base.
nouvelle contrainte
est utilisée pour contraindre les types de paramètres pouvant être utilisés comme paramètres de type dans une déclaration générique.
nouveau modificateur (référence C#)
Lorsqu'il est utilisé comme modificateur, le mot-clé new peut masquer explicitement les membres hérités d'une classe de base. Masquer un membre hérité signifie que la version dérivée du membre remplace la version de la classe de base. Le masquage des membres sans le nouveau modificateur est autorisé, mais un avertissement est généré. Masquer explicitement un membre à l'aide de new supprime cet avertissement et enregistre le fait que la version dérivée est utilisée à la place.
Pour masquer un membre hérité, déclarez le membre dans une classe dérivée du même nom et modifiez le membre avec le nouveau modificateur
nouvel opérateur (référence C#)
1. Utilisé pour créer des objets et appeler des constructeurs. Par exemple :
Class1 o = new Class1();
2 Également utilisé pour appeler le constructeur par défaut pour les types de valeur
3 Le nouvel opérateur ne peut pas être surchargé par .
4. Si le nouvel opérateur ne parvient pas à allouer de la mémoire, il lancera une exception OutOfMemoryException
new Constraints (Référence C#)
new La contrainte spécifie que tout paramètre de type dans une déclaration de classe générique doit avoir un constructeur public sans paramètre. Lorsqu'une classe générique crée une nouvelle instance du type, cette contrainte est appliquée aux paramètres de type, comme le montre l'exemple suivant :class ItemFactory<T> where T : new() { public T GetNewItem() { return new T(); } }Le masquage des noms par héritage prend l'une des formes suivantes : 1. Introduisez des constantes, des désignations, des 2. L'introduction de méthodes dans une classe ou une structure masque les attributs, champs et types de même nom dans la classe de base. Masque également toutes les méthodes de classe de base avec la même signature. 3. L'introduction de l'
indexeurdans une classe ou une structure masquera tous les indexeurs de classe de base portant le même nom.
4. Il est faux d'utiliser new et override en même temps sur le même membre. REMARQUE : L'utilisation du modificateur new dans une déclaration qui ne masque pas les membres hérités générera un avertissement. Exemple Dans cet exemple, la classe imbriquée MyClass masque la classe du même nom dans la classe de base. Cet exemple illustre non seulement comment utiliser des noms complets pour accéder aux membres de classe masqués, mais illustre également comment utiliser le nouveau modificateur pour supprimer les messages d'avertissement.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!