IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 .NET Discussion :

Appel d'une methode inaccessible


Sujet :

.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 194
    Points : 74
    Points
    74
    Par défaut Appel d'une methode inaccessible
    Bonjour,

    Je voulais m'entrainer en c# mais il y a un problème que je ne comprends pas.
    J'ai ma classe Program.cs avec mon Main qui doit simplement appeler une méthode située dans cette même classe et bien qu'elle soit public, je ne peux y avoir accès que si je la déclare static.
    Pouvez m'expliquer pourquoi svp.
    Merci.

  2. #2
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    Bonsoir,

    C'est tout bête, mais la fonction main est statique, donc ne nécessite pas d'instance de ta classe pour être éxecutée. Elle ne peut donc pas appeler de méthode d'instance si elle est statique. d'où le fait que tu sois obligé de déclarer ta fonction statique. Sinon tu peux faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    class program
    {
      static void main()
      {
        program prog = new program();
        prog.MaMethode();
      }
      public void MaMethode()
      {
        // du code
      }
    }
    Une méthode d'instance ne peut être appelée qu'à partir d'une instance.
    Une méthode statique peut être appelée de n'importe où (méthode d'instance ou non).

    Bon dév
    Un âne se croit savant parce qu'on le charge de livres (proverbe américain)

    N'oubliez pas de avant de
    Pas de question techniques par MP, c'est contre la philosophie du forum

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 194
    Points : 74
    Points
    74
    Par défaut
    Super merci bcp. Je pense pas que j'aurais compris ça tout seul.
    Merci sisqo60

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. appel d'une methode qui ne marche pas
    Par hansaplast dans le forum C++
    Réponses: 4
    Dernier message: 27/04/2006, 13h52
  2. Appel d'une methode VBA en C++
    Par safae dans le forum C++
    Réponses: 8
    Dernier message: 14/04/2006, 14h53
  3. forcer l'appel d une methode apres un repaint
    Par ceres02 dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 11/03/2006, 00h17
  4. [Language]problème lors de l'appel d'une méthode
    Par Samanta dans le forum Langage
    Réponses: 6
    Dernier message: 18/05/2005, 13h03
  5. [Reflection][Bean] Appel d'une méthode dynamiquement
    Par eraim dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 28/04/2004, 11h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo