IT | Mémo C# sur les mots-clefs

Bonjour internaute !

Ici, simplement quelques mots-clefs utilisés en C#, histoire de les avoir sous le coude !

Beaucoup de mots-clefs permettent de faire usage des concepts de Programmation Orientée Objet en C#. Le tableau ci-dessous les recense smiley

Mots-clefs de base

Mot-clef Application Usage Difficulté
ref paramètre d'une méthode Indique un passage par valeur. A préciser dans la définition de la méthode et lors de son appel. 2
out paramètre d'une méthode Indique un passage de la référence avec modification de la/des valeur(s). Vérifie aussi l'initialisation des paramètres sur le retour. 2
base Héritage - constructeur Utilise le constructeur de la clase mère. 1
virtual Héritage - méthode Dans la classe mère, permet de préciser que la méthode est dérivable. 1
override Héritage - méthode Précise qu'une méthode réécrit une méthode provenant de la classe mère (soit définie en abstract, soit en virtual). 1
override Héritage - propriété Précise qu'une propriété provenant de la classe mère est réécrite. 1
sealed Héritage - méthode/propriété/attribut Précise que la méthode, la propriété ou l'attribut n'est pas dérivable. 1
default Génériques - type Renvoie la valeur par défaut du type générique. 2
this paramètre d'une méthode

Indique l'extension d'une méthode (statique, dans une classe statique) dans la classe ou l'interface précédée du mot this.

Ex : public static string Crypte(this string chaine) { ... }
1
delegate Délégation - défini dans une classe

Pour passer une méthode en paramètre. Le délégué doit avoir la même signature que les méthodes qu'il pointe.

Ex : private delegate void DelegateTri(int[] tableau);
DelegateTri tri = TriAscendant;
DelegateTri tri = TriDescandant;
1
Action<> Délégation - paramètre d'entrée d'une méthode déléguée Délégué générique. Permet d'accepter différents types en entrée d'une méthode déléguée qui ne renvoie rien. 3
Func<> Délégation - paramètre de sortie d'une méthode déléguée Délégué générique. Permet d'accepter différents types en entrée d'une méthode déléguée qui renvoie quelque chose. 3
event Délégation - défini dans une classe Collection de délégués, pointant/"s'abonnant" à différents délégués, permettant à une classe d'être notifiée d'un changement. 3
try / catch Exception - bloc dans une méthode Permet de tester le code du bloc try pour lever les exceptions dans le bloc catch. 1
idem + finally Exception - bloc dans une méthode Permet d'executer le code du bloc finally, même si une exception a été levée. 1
throw + exception Exception - dans une méthode Permet de lever soit-même une exception. 1
throw; Exception - dans le bloc catch d'une méthode Permet de relever une exception à un niveau supérieur. 1

 

Contraintes sur les types génériques

Contrainte

Description

where T : struct

Le type générique doit être un type valeur

where T : class

Le type générique doit être un type référence

where T : new()

Le type générique doit posséder un constructeur par défaut

where T : IMonInterface

Le type générique doit implémenter l’interface IMonInterface

where T : MaClasse

Le type générique doit dériver de la classe MaClasse

where T1 : T2

Le type générique doit dériver du type générique T2

Source : https://openclassrooms.com/courses/programmez-en-oriente-objet-avec-c/le...

 

Quelques façons d'écrire les choses :

  • int? entier = null; 

=> le int? fait référence à la classe générique Nullable et "rend" ici le type int comme tel.

  • string s = string.format("coucou {0}", Robert.nom); Console.WriteLine(s);

équivalent à

Console.WriteLine("coucou {0}", Robert.nom)

équivalent à

Console.WrileLine("coucou " + Robert.nom);
  • Changez la culture/langue
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US")

 

Quelques notes sur ToString() (avec exemples pour le type Enum)

La méthode ToString peut prendre des arguments pour formater la chaîne à afficher. Ci-dessous des exemples sur le type Enum :

  • ToString("F") (ou f) : affiche le nom du flag d'un type enum
  • ToString("G") (ou g) : affiche le nom de l'élément d'un type enum
  • ToString("X") (ou x) : affiche la valeur de l'élement d'un type enum sous forme hexadécimale
  • ToString("D") (ou d) : affiche la valeur de l'élément d'un type enum sous forme décimale
Zircon - This is a contributing Drupal Theme
Design by WeebPal.