Pourquoi ne pouvez-vous pas utiliser le mot " il " dans une méthode statique dans .Net?
Je suis en train d'utiliser le this
mot-clé dans une méthode statique, mais le compilateur ne me permet pas de l'utiliser.
Pourquoi pas?
Vous devez vous connecter pour publier un commentaire.
C'est facile. Le mot-clé 'ce' renvoie une référence sur l'instance courante de la classe contenant il. Méthodes statiques (ou tout membre statique) n'appartiennent pas à une instance particulière. Ils existent sans la création d'une instance de la classe. Il est beaucoup plus en profondeur explication de ce que les membres statiques sont et pourquoi/quand les utiliser dans la MSDN docs.
Comme une note complémentaire, à partir d'une méthode Statique, vous pouvez y accéder ou les membres statiques de la classe. Faire l'exemple ci-dessous valides et à la fois très utile.
Méthodes statiques sont de Classe et non à l'instance spécifique. "cela" représente une instance de la classe au moment de l'exécution, de sorte que ce ne peut pas être utilisé dans un contexte statique, car il ne sera pas faire référence à une instance.
Au lieu de cela, le nom de la classe doit être utilisé, et vous ne pourrez accéder qu'aux membres statiques de la classe
cela représente l'instance actuelle de l'objet et il n'y a pas d'exemple avec des méthodes statiques.
Si Vous souhaitez utiliser non statique de la fonction de la classe en fonction statique.Créer un objet de la classe en fonction statique.
Pour Exemple
Il n'y a pas de
this
objet de référence dans la méthode statique.Pour l'OP de la question, reportez-vous à la accepté de répondre. Cette réponse est pour ceux qui recherchent un rapide un liner pour une utilisation dans des méthodes statiques.
Si la classe est une forme, et c'est ouvert (vous avez besoin du nom de la forme ainsi), ce qui peut être appelée à l'intérieur d'une méthode statique;