c # utilise des modificateurs d'accès ( public
, privé
, protégé
) pour contrôler l'accessibilité des membres dans les classes et les structures. Ces modificateurs définissent la portée à partir de laquelle un membre de classe (champ, propriété, méthode) est accessible. Le modificateur statique
ajoute une autre couche de contrôle, définissant des membres qui appartiennent à la classe elle-même, pas des instances individuelles.
Accès aux modificateurs:
public
: Les membres déclarés public
sont accessibles de n'importe où - dans la même assemblée ou tout autre assemblée qui le faisait référence. Cela fournit l'accessibilité la plus large.
Private
: Les membres déclarés privé
ne sont accessibles que dans la classe où ils sont définis. Cela applique une forte encapsulation et une cachette de données.
Protégé
: Les membres déclarés protégés
sont accessibles dans la classe où ils sont définis, et également dans des classes dérivées (classes qui héritent de la classe originale). Cela permet l'héritage et l'extension contrôlés des fonctionnalités.
Aucun modificateur (par défaut): Si aucun modificateur d'accès n'est spécifié, le niveau d'accès par défaut est généralement interne
. Cela signifie que le membre est accessible uniquement à partir de la même assemblée (projet) où il est défini.
Modificateur statique:
Le modificateur statique
indique qu'un membre appartient à la classe elle-même, et non à une instance spécifique de la classe. Les membres statiques sont partagés sur toutes les instances. Les membres statiques sont accessibles à l'aide du nom de classe, pas une instance d'objet. Les classes statiques ne peuvent pas être instanciées.
Exemple illustratif:
public class ExampleClass
{
private int privateVar;
protected int protectedVar;
public int publicVar;
static int staticVar;
public void PublicMethod() { }
private void PrivateMethod() { }
protected void ProtectedMethod() { }
static void StaticMethod() { }
public static void Main(string[] args)
{
ExampleClass instance = new ExampleClass();
instance.publicVar = 10;
instance.PublicMethod();
// instance.privateVar = 20; // Error: private
// instance.PrivateMethod(); // Error: private
ExampleClass.staticVar = 5;
ExampleClass.StaticMethod();
}
}
Dans cet exemple, publicvar
et publicMethod
sont librement accessibles. privatevar
et privateMethod
ne sont accessibles que dans exampleclass
. ProtectedVar
et protectedMethod
sont accessibles dans exampleclass
et toutes les classes qui en héritent. staticvar
et staticMethod
sont accessibles directement via le nom de classe.
Applications pratiques:
Les modificateurs d'accès sont fondamentaux pour les principes de conception orientés objet comme l'encapsulation et l'abstraction. Ils aident à contrôler comment les différentes parties de votre application interagissent, promouvant la maintenabilité du code et réduisant les effets secondaires involontaires. Les membres statiques sont utiles pour les fonctions utilitaires ou les constantes qui ne nécessitent pas d'instance d'objet.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3