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 :

Retourner le nom de la méthode où on se trouve


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2002
    Messages : 177
    Par défaut Retourner le nom de la méthode où on se trouve
    Bonjour,

    j'ai une demande peut-être un peu bizarre.

    J'aimerais pouvoir retourner le nom de la méthode où on se trouve.

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void id1{
    Object objet = new Object();
    System.out.println(objet.getClass.getMethod.getName);
    }
    et j'obtiendrais "id1"

    Est-ce possible ??? j'ai regardé la méthode getMethods qui renvoient toutes les méthodes d'une classe mais ca ne m'est pas d'une grande aide.

    Merci d'avance

  2. #2
    Expert confirmé

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Par défaut
    Citation Envoyé par Bindy Voir le message
    Est-ce possible ??? j'ai regardé la méthode getMethods qui renvoient toutes les méthodes d'une classe mais ca ne m'est pas d'une grande aide.
    Tu peux commencer par regarder
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Thread.currentThread().getStackTrace();
    http://java.sun.com/j2se/1.5.0/docs/...getStackTrace()

    Le premier élement de la liste devrait contenir l'information que tu cherches... Mais peut-être qu'il existe une méthode plus propre pour trouver uniquement la méthode.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2002
    Messages : 177
    Par défaut
    merci pour l'info, mais c'est encore trop vague. Je cherche vraiment le retour du nom de la méthode uniquement.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    429
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 429
    Par défaut
    merci pour l'info, mais c'est encore trop vague.
    Et si tu faisais l'effort de creuser les pistes pertinentes qui te sont données ? Incroyable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // appeler ce fichier Test.java
     
    public class Test {
     
        public void id1() {
            System.out.println(Thread.currentThread().getStackTrace()[1].getMethodName());
        }
     
        public static void main(String[] args) {
            new Test().id1();
        }
    }

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2002
    Messages : 177
    Par défaut
    Citation Envoyé par Nicolas_75 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /System.out.println(Thread.currentThread().getStackTrace()[1].getMethodName());
     
    }
    Excuse-moi, ce n'est pas de la mauvaise volonté, mais c'est le "getStackTrace()[1]" que je ne connaissais pas...

    merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2002
    Messages : 177
    Par défaut
    Petite question supplémentaire.

    Comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Thread.currentThread().getStackTrace()[1].getMethodName().
    getStackTrace() ne compile pas en version 1.4 de java, mais seulement en 1.6

    Quelqu'un connaît-il une astuce ??? merci d'avance

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 13/01/2007, 19h33
  2. [POO] Comment retourner le nom d'un objet
    Par mkael29 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/09/2006, 07h47
  3. Méthode retournant le nom du fichier courant du Workspace
    Par couetbis dans le forum SWT/JFace
    Réponses: 14
    Dernier message: 20/07/2006, 12h05
  4. Réponses: 10
    Dernier message: 04/03/2006, 23h34
  5. Réponses: 7
    Dernier message: 03/12/2004, 13h40

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