Partage
  • Partager sur Facebook
  • Partager sur Twitter

héritage et généricité

problème

    26 juin 2008 à 18:31:37

    Bonjour,

    je suis en train de mettre un programme et j'ai un problème avec la généricité. Voilà mon problème j'aimerais faire un truc du genre :

    abstract class A implements Comparable<A>
    {
    	
    }
    
    class B extends A implements Comparable<B>
    {
    	
    }
    
    class C extends A implements  Comparable<C>
    {
    	
    }
    


    Malheureusement, je n'y arrive pas. Il veux que je mette Comparable<A> pour B et C...
    • Partager sur Facebook
    • Partager sur Twitter
      26 juin 2008 à 22:38:35

      Je ne garantis rien mais essaie :
      abstract class A implements Comparable<? extends A>

      Je doute que ça prenne mais ne sait-on jamais. Sinon tu peux peut-être aussi essayer implements Comparable sans indiquer de type...
      • Partager sur Facebook
      • Partager sur Twitter
        3 juillet 2008 à 21:11:24

        Ca ne marche pas malheuresement.
        • Partager sur Facebook
        • Partager sur Twitter
          3 juillet 2008 à 22:12:39

          Une classe de type B peut pas être comparée avec une classe de type A ? J'ai pas tout compris à ton probleme, car au final, comme B hérite de A, B implémente Comparable<A> et Comparable<B> ( un des deux par héritage ), ça me parait un peu tordu, essaye peut être de généraliser tes comparaisons aux classes de ton programme ( par identifiant ou attribut d'un type comparable par exemple ). Sinon essaye de créer des interfaces dérivées de Comparable qui répondent à différentes specificitées. A mon avis, une conception correcte permet d'éviter un cas comme celui ci, expose peut être plus avant ton projet.
          • Partager sur Facebook
          • Partager sur Twitter
            5 juillet 2008 à 18:03:57

            ne precise pas le comparable pour le type A
            comme il ne peut pas etre instancie c'est inutile
            • Partager sur Facebook
            • Partager sur Twitter

            héritage et généricité

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown