Quels sont les spécificateurs d'accès disponibles dans C#? Quel est le défaut?Quels sont les spécificateurs d'accès disponibles dans C#? Quel est le défaut?
Répondre
Les modificateurs d'accès possibles sont:
- privé
- protégé
- interne
- protégée interne
- publique
Le modificateur par défaut qui est utilisé, dépend de la élément.
- Pour les classes, le spécificateur par défaut est 'interne'
- Pour la classe-membres, le spécificateur par défaut est privé
- Pour les types imbriqués (classes internes), la valeur par défaut est privé
Vous pouvez également trouver sur MSDN
Vous trouverez peut-être aussi intéressant d'avoir al ook à this
Notez que pour les types * imbriqués, la valeur par défaut est "private" –
Merci, je l'ai ajouté :) –
Une copie de la spécification de langage C# est incluse lorsque vous installez Visual Studio (en 2008 au moins), au VSRoot\VC#\Specifications\1033\CSharp Language Specification.doc
. C'est, bien sûr, l'endroit définitif à regarder.
Les modificateurs d'accès (Spécificateurs d'accès) correspondent à la portée d'accessibilité d'un objet et de ses membres. Tous les types C# et les membres de type ont un niveau d'accessibilité. Nous pouvons contrôler la portée de l'objet membre d'une classe en utilisant des spécificateurs d'accès. Nous utilisons des modificateurs d'accès pour assurer la sécurité de nos applications. Lorsque nous spécifions l'accessibilité d'un type ou d'un membre, nous devons le déclarer en utilisant l'un des modificateurs d'accès fournis par le langage CSharp.
C# fournissent cinq spécificateurs d'accès, ils sont les suivants:
public, privé, protégé, interne et protégé interne.
public:
public est le spécificateur d'accès le plus commun en C#. Il peut être accessible de n'importe où, cela signifie qu'il n'y a aucune restriction sur l'accessibilité. L'étendue de l'accessibilité est à l'intérieur comme à l'extérieur. Le type ou le membre peut être accédé par tout autre code dans le même assembly ou un autre assembly qui le référence.
privé:
La portée de l'accessibilité est limitée seulement à l'intérieur des classes ou struct où ils sont déclarés. Les membres privés ne sont pas accessibles en dehors de la classe et c'est le niveau d'accès le moins permissif.
protégé:
La portée de l'accessibilité est limitée dans la classe ou struct et la classe dérivée (inherited) de cette classe.
interne:
Les modificateurs d'accès internes peuvent accéder à l'intérieur du programme qui contient ses déclarations et aussi l'accès dans le même niveau d'assemblage, mais pas d'un autre assemblage.
protégée interne:
interne est protégé les mêmes niveaux d'accès à la fois protégé et interne. Il peut accéder n'importe où dans le même assemblage et dans la même classe aussi les classes héritées de la même classe.
- 1. Quels frameworks C++ HTTP sont disponibles?
- 2. Quels garbage collectors sont disponibles pour C++?
- 3. Quels sont les remplacements disponibles pour vbscript dans une application?
- 4. Quels sont les autres clients http génériques disponibles?
- 5. Quels sont les clients GUI disponibles pour Mercurial?
- 6. Quels types de sockets sont disponibles dans VxWorks?
- 7. Quels sont les outils disponibles pour les traitements par lots temporisés dans Java EE?
- 8. Quel est le statut actuel de RIA pour les navigateurs mobiles et quelles sont les solutions disponibles?
- 9. Quels sont les symbos #if prédéfinis C#?
- 10. Quels éditeurs modaux sont disponibles en dehors de vi/vim?
- 11. Quels add-ons/utilitaires sont disponibles pour TFS?
- 12. Quels moteurs de modèles sont disponibles pour ASP.NET MVC Framework?
- 13. Quels sont les attributs?
- 14. Quels autres gestionnaires de session sont disponibles pour Emacs?
- 15. Quels addons/AddIns sont disponibles pour VS 2005 IDE
- 16. Quels outils freeware/floss sont disponibles pour charger les données dans SPSS?
- 17. Quels frameworks OpenGL ES sont disponibles pour les interfaces utilisateur 2D avec iPhone OS?
- 18. Quels outils gratuits sont disponibles pour analyser les conflits de verrous dans Java?
- 19. Quels types d'options d'authentification sont disponibles pour les sites Web et les applications Web?
- 20. Quel est l'état par défaut des variables?
- 21. Quels sont les bons outils disponibles pour créer de l'aide en ligne pour les applications .net?
- 22. Quels outils de génération automatique de code sont disponibles pour les classes Castle ActiveRecord?
- 23. Apache Velocity: Quelles sont les variables disponibles dans les templates?
- 24. Quel est le raccourci par défaut d'intellisense dans vs2008?
- 25. Pourquoi ces paramètres par défaut sont-ils définis tels quels?
- 26. Quels sont les outils gratuits de contrôle des performances de Coldfusion 8 édition standard disponibles?
- 27. iPhone Mobile App (safari): quels sont les événements javascript disponibles comme onblur, onfocus ou onbeforeunload?
- 28. Quels produits de référentiel sont disponibles pour assurer le suivi des services Web?
- 29. Quels sont les tags HTML valides dans les flux RSS?
- 30. Quels sont les schémas de partage de données disponibles entre deux applications iPhone?
@Preet Sangha, et maintenant si quelqu'un le fait google, il y a de fortes chances que cette question apparaisse comme une réponse! =) – Rob