Programmation C sharp/Type partiel
Le langage C# permet d'implémenter les classes, les structures et les interfaces sur plusieurs fichiers. Visual Studio .Net utilise cette fonctionnalité pour les fenêtres graphiques : une partie de la classe Form1
est implémentée dans le fichier Form1.cs
et l'autre dans le fichier Form1.Designer.cs
.
Syntaxe
[modifier | modifier le wikicode]Chaque fichier implémentant une partie d'un type doit faire précéder le mot clé du type (class
, struct
ou interface
) du mot clé partial
:
mode_accès partial type nom ... { ... }
Exemple :
public partial class Exemple
{
}
Il n'est pas nécessaire que tous les fichiers précisent le mode d'accès ou la classe de base.
Compilation
[modifier | modifier le wikicode]À la compilation d'un type partiel, tous les fichiers sources concernés doivent être spécifiés sur la ligne de commande d'appel au compilateur.
Méthode partielle
[modifier | modifier le wikicode]Une méthode partielle permet de déclarer sa signature dans une partie d'un type partiel et de l'implémenter dans une autre partie[1] :
- La méthode est obligatoirement privée (utilisable qu'en interne par la classe) et ne peut rien retourner (type void) ;
- Il est possible que la méthode ne soit pas définie du tout. Dans ce cas, le compilateur supprime la déclaration et les appels à cette méthode.
Exemple :
partial class UneClasse
{
partial void LogMessage(string s);
}
partial class UneClasse
{
partial void LogMessage(String s)
{
Console.WriteLine("LOG>> {0}", s);
}
}