Erreur C#xa0: inaccessible en raison de son niveau de protection
Ce guide vous expliquera l’erreur que les nouveaux programmeurs rencontrent souvent en C#, qui est inaccessible en raison de son niveau de protection
. La raison en est que les nouveaux programmeurs ne sont pas familiers avec de nombreux concepts concernant la programmation orientée objet.
Cela demande beaucoup de temps et de pratique. Si vous avez rencontré cette erreur, nous allons vous trouver la solution.
Inaccessible en raison de son niveau de protection en C#
Avant de trouver la solution à cette erreur particulière, nous devons comprendre le concept appelé modificateurs d’accès en C# ou tout autre langage de programmation orienté objet.
Alors, que sont les modificateurs d’accès ? Continuez à lire.
Que sont les modificateurs d’accès en C#
En C#, les modificateurs d’accès définissent la portée de l’accessibilité d’une classe, y compris ses méthodes et ses membres de champ. En C#, il existe six types différents.
Par exemple, si nous donnons à une classe le modificateur d’accès public
, elle sera accessible à tout le monde dans le programme. Il n’y a pas de limite à qui peut assister à la classe pubic
.
Examinons tous les modificateurs d’accès disponibles en C#.
Public
- L’accès aux membres publics est illimité.Private
- Seule la définition de la classe est accessible. Si aucun modificateur d’accès n’est spécifié en C#, il s’agit du modificateur d’accès par défaut.Protected
- Les classesProtected
ne sont accessibles qu’à l’intérieur des déclarations de classe et des classes héritées.Internal
- Seul l’assemblage du projet en cours a accès.Protected Internal
- L’accès est limité à l’assembly actuel et aux types hérités de la classe englobante. Tous les membres du projet en cours et de la classe dérivée ont accès aux variables.Private Protected
- L’accès est limité à la classe fermée ou aux types hérités de la classe contenante dans l’assembly actuel.
la solution à l’erreur
Supposons que vous n’ajoutiez aucun modificateur d’accès à une classe, ses membres ou ses méthodes. Dans ce cas, le modificateur d’accès internal
sera appliqué à la classe et le modificateur d’accès private
sera appliqué à ses méthodes et champs par défaut, ce qui peut expliquer pourquoi vous obtenez cette erreur.
Étant donné que vous n’avez affecté aucun modificateur d’accès à vos variables, elles sont définies comme étant privées comme état par défaut. Jetez un oeil au code suivant.
namespace MyCsharp {
class csharprogram {
void method1() {}
class csharpin {}
}
}
Vous avez peut-être écrit votre code comme ci-dessus. Vous devez lui affecter le modificateur d’accès.
La façon dont vous y ajoutez un modificateur d’accès est donnée dans le code suivant.
namespace MyCsharp {
public class csharprogram {
public void method1() {}
public class csharpin {}
}
}
L’attribution du modificateur d’accès public
à votre classe, vos variables et vos méthodes vous permettra d’y accéder partout dans le package, où que vous soyez. Vous pouvez y accéder n’importe où.
Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.
LinkedIn