Voici les principaux cas d’utilisation et exemples d’utilisation du mot-clé static
en C# :
Utilisations
Champs statiques
Ils représentent des variables qui appartiennent au type lui-même et sont partagées par toutes les instances du type.
Par exemple :
|
|
Méthodes statiques
Ces méthodes appartiennent au type lui-même et vous pouvez les appeler sans créer d’instance du type.
|
|
Propriétés statiques
Ce type de propriétés appartient au type lui-même.
|
|
L’exemple ci-dessus illustre un cas d’utilisation dans lequel une propriété statique permet de suivre le nombre d’instances de classe créées. La propriété reste accessible (Person.Count
) plutôt que par une instance.
Constructeurs statiques
Ces constructeurs initialisent les membres statiques du type. Ils sont appelés automatiquement avant tout accès aux membres statiques et ne sont exécutés qu’une seule fois.
|
|
Classes statiques
Ces classes ne peuvent contenir que des membres statiques. Vous ne pouvez pas créer d’instance d’une classe statique, et elle est généralement utilisée pour regrouper des méthodes utilitaires.
|
|
Avantages et inconvénients
L’utilisation de static
en C# offre plusieurs avantages clés pour le développement d’applications :
-
Efficacité de la mémoire : une seule copie existe pour l’ensemble de l’application, quel que soit le nombre d’instances de classe créées, et l’utilisation de la mémoire est réduite puisqu’aucune instanciation d’objet n’est nécessaire.
-
Gestion de l’état : en termes d’accès global, ils fournissent des valeurs partagées accessibles à l’ensemble de l’application sans création d’instance. Il s’agit par exemple de maintenir des constantes ou des valeurs de configuration à l’échelle de l’application. Au niveau de la classe, c’est avantageux pour mettre en œuvre des modèles de singleton ou gérer un état à l’échelle de la classe.
Cependant, vous devez tenir compte de certaines limitations :
- Ils ne sont pas « thread-safe » par défaut et peuvent causer des fuites de données.
- Elles peuvent rendre le code plus difficile à maintenir si elles sont utilisées de manière excessive en tant que variables globales.
- Elles ne peuvent pas accéder aux membres non statiques sans une référence d’instance explicite.
Cas d’utilisation du mot clé static
Méthodes utilitaires
Comme nous l’avons expliqué ci-dessus, les classes utilitaires utilisent généralement le mot-clé static
.
|
|
Modèle Singleton
S’assurer qu’une classe n’a qu’une seule instance, et fournir un point d’accès global à celle-ci, c’est un cas bien classique.
|
|
Constantes
Définir des valeurs qui ne changent pas est un autre cas d’utilisation courant.
|
|
Données partagées
Lorsque vous avez besoin de partager des données entre toutes les instances d’une classe, vous pouvez utiliser le mot-clé static
.
|
|
Conclusion
Pour en savoir plus, consultez les ressources de Microsoft sur le sujet :
- Microsoft Docs : Classes statiques et membres de classe statique (Guide de programmation C#)
- Microsoft Docs : static (référence C#)
Suivez-moi !
Merci d’avoir lu cet article. Assurez-vous de me suivre sur X, de vous abonner à ma publication Substack et d’ajouter mon blog à vos favoris pour ne pas manquer les prochains articles.