10
votes

Comment accéder à une méthode statique en C #?

Lorsque nous avons une méthode statique dans une classe, il n'accède que les membres statiques droit et La méthode statique ne peut accéder qu'avec le nom de la classe. Donc, je ne suis pas en mesure d'accéder à la méthode statique dans mon exemple: xxx

}


0 commentaires

5 Réponses :


10
votes

Vous devez le changer en xxx

et y accéder avec xxx

pas une instance de la classe.


2 commentaires

Merci cela fonctionne bien merci pour la réponse M. Astander


Non, ce n'est pas certain qu'il devrait le changer au public. Il existe d'autres niveaux d'accessibilité qui le rend accessibles, ce qui peut être mieux adapté à la situation.



1
votes

Vous devez faire myClass.get une méthode publique.


4 commentaires

Non, il n'a pas besoin de. Il existe d'autres niveaux d'accessibilité qui le rend accessibles et pourraient être mieux en fonction de la situation. Oh, et quelle est une méthode "pubienne"? ;)


Vous n'êtes pas un phobe public, n'est-ce pas? ;)


J'utilise souvent le public moi-même, mais une réponse ne devrait pas dire que le public est la seule option possible quand ce n'est pas le cas.


@Guffa: Qui dit quelle réponse ne devrait pas dire? C'est un wiki public. Je pense que vous êtes la police pédale. J'ai choisi de ne pas mentionner tous les modificateurs d'étendue possibles. Il y a une réponse (en plus de votre choix) qui explique interne; upvote-le. Avez-vous déjà entendu une déclaration comme: "Vous devez vous procurer une voiture"? L'implication est une voiture est une bonne idée, pour certains. Mais une moto ou un vélo peut être plus appropriée. le public fera. Mais je pense que nous avons tous votre point.



1
votes

L'accessibilité par défaut d'un membre est le plus privé possible pour cela. Cela signifie que votre méthode est privée car vous n'avez pas spécifié de niveau d'accessibilité.

Vous devez le spécifier comme public (ou interne si vous n'avez besoin d'accès que dans le même projet) pour l'atteindre: P>

internal static void get()


0 commentaires

5
votes

Votre problème est simple. L'accesseur par défaut pour un Void statique est privé . Ajoutez simplement soit public ou interne devant le Obtenez la méthode et que vous êtes prêt à partir.

En outre, il serait préférable de ne pas appeler la méthode obtenir pour éviter toute confusion avec les propriétés.


0 commentaires

0
votes

Vous pouvez avoir un modificateur d'accès que vous souhaitez sur vos méthodes statiques.

L'accès du cours ne limite que la façon dont il est utilisé en dehors de la classe elle-même.

Cependant, les méthodes statiques ne peuvent pas utiliser ce mot clé comme référence à la classe mère.

Selon le niveau d'accès de la méthode, vous pouvez appeler une méthode statiquement comme suit: xxx


0 commentaires