Programmation C sharp/Type partiel

Un livre de Wikilivres.
Programmation C#
Programmation C#
Modifier ce modèle

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);
	}
}

Références[modifier | modifier le wikicode]

  1. https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/partial-method