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

Java Discussion :

Problème TP Java


Sujet :

Java

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2017
    Messages : 9
    Par défaut Problème TP Java
    Bonjour à tous,

    je me tourne vers vous car je bloque sur un TP d'introspection et je n'arrive pas à comprendre pourquoi mon programme ne marche pas.

    TP : Soit à développer un petit outil ( de génie) logiciel qui, pour une classe donnée, retourne la liste des méthodes héritées non redéfinies localement.

    Si quelqu'un à une idée, j'aimerai beaucoup qu'il m'en fasse par (le formatage de la méthode est imposé).

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    public static Set<Method> getHeritees(String nomDeLaClasse) throws ClassNotFoundException{
            Class<?> classe = Class.forName(nomDeLaClasse);
            Class<?> superClasse = classe.getSuperclass();
     
            Set<Method> set = new HashSet<Method>();
     
            while(superClasse != null){
                for(Method m : superClasse.getDeclaredMethods()){
                    if(Modifier.isPublic(m.getModifiers()) || Modifier.isProtected(m.getModifiers()) && !(Modifier.isAbstract(m.getModifiers()))){
                        set.add(m);
                    }    
                }  
                superClasse = superClasse.getSuperclass();
            }    
     
            Iterator<Method> it = set.iterator();
     
            while(it.hasNext()){
                Method m = it.next();
                for(Method method : classe.getDeclaredMethods()){
                    if(m.getName().equals(method.getName()) && m.getReturnType().equals(method.getReturnType())){
                        try{
                            classe.getDeclaredMethod(m.getName(), m.getParameterTypes());
                            it.remove();
                        } catch(Exception e){
                        }    
                    }    
                } 
            }    
     
            return set;
        }

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2017
    Messages : 9
    Par défaut
    J'ai trouvé la solution. Le nombre de méthode n'était pas le bon car j'avais des doublons.

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

Discussions similaires

  1. Problème HASHTABLES java
    Par ldcarpathes dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 17/08/2006, 17h25
  2. Problème de java.lang.NoClassDefFoundError
    Par nramariavelo dans le forum Hibernate
    Réponses: 5
    Dernier message: 13/06/2006, 14h54
  3. problème sous java
    Par lazzeroni dans le forum Oracle
    Réponses: 4
    Dernier message: 12/04/2006, 15h16
  4. Problème Applet Java et Win XP SP2
    Par octal dans le forum Applets
    Réponses: 4
    Dernier message: 04/02/2006, 09h57
  5. divers problème avec Java et jdbc
    Par chti_juanito dans le forum JDBC
    Réponses: 28
    Dernier message: 31/10/2005, 16h54

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