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

Langage Java Discussion :

Les fonctions statiques


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 12
    Par défaut Les fonctions statiques
    Bonjour,
    je travail actuellement sur un projet dans lequel je dois afficher une image, elle même générée par une classe.
    J'ai donc une fonction genererImg() qui va appeler afficher() de la classe Main.

    Je suis obligé de passer la fonction afficher() en static pour pouvoir l'appeler depuis genererImg() mais dés lors, je ne peu plus utiliser le mot clé "this" qui est nécessaire à l'affichage...

    Si quelqu'un peu m'expliquer plus clairement les raisons de ces erreurs voire trouver une solution
    Merci d'avance !

  2. #2
    Membre chevronné
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2010
    Messages : 158
    Par défaut
    Si la fonction afficher utilise le mot-clé this, c'est bien qu'elle est liée à une instance de ta classe, et donc que ce n'est pas une méthode statique et qu'il ne faut pas la déclarer comme telle !
    Je ne vois pas pourquoi tu aurais "besoin" de la déclarer en static. Il suffit, au moment d'appeler la fonction, de connaître l'instance sur laquelle tu veux l'appeler.

    Un peu plus de contexte pourrait nous aider à comprendre pourquoi tu coinces...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 12
    Par défaut
    Merci pour ta réponse, en réalité j'appelais depuis ma classe Main la fonction genererImg() d'une autre classe, qui appelait ensuite la fonction afficher() situé sur la classe Main

    Il fallait simplement que genererImg() retourne l'image et que je la passe ensuite en paramètre à afficher()

    Finalement, aucun rapport avec les fonctions statiques...

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

Discussions similaires

  1. les fonctions statiques sont-elles réentrantes ?
    Par ikuzar dans le forum Réseau
    Réponses: 10
    Dernier message: 23/10/2013, 12h32
  2. doc sur les fonctions
    Par masterfab dans le forum C
    Réponses: 18
    Dernier message: 23/06/2005, 17h55
  3. Réponses: 11
    Dernier message: 22/12/2003, 21h06
  4. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04
  5. Réponses: 7
    Dernier message: 24/05/2003, 15h56

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