• [^] # Re: Mes deux centimes ...

    Posté par (site web personnel) . En réponse au journal Repenser les langages et le développement logiciel. Évalué à 5.

    D'ailleurs à propos du manque d'héritage multiple, je me heurte sans arrêt aux javaïens qui me disent qu'il faut « concevoir différemment » mais je cherche toujours une solution au problème simple suivant :

    http://zarb.org/~gc/t/prog/lack_multiple_inheritance/(...)(...)


    J'aimerai comprendre ce qui te chagrine. Parceque mis à part le fait que java n'est pas du C++. On peut quand même faire quelque chose du genre :

    abstract class Voiture {
    public int getVitesseMin() { return 0; }
    public abstract int getVitesseMax();
    }

    interface Marque {
    public abstract String getPaysOrigine();
    }

    abstract class VoitureRenault extends Voiture implements Marque {
    public abstract int getVitesseMax();
    public String getPaysOrigine(){return "France";}
    }

    //Rappelons l'implémentation pour être lisible
    class Laguna extends VoitureRenault implements Marque {
    public int getVitesseMax() { return 200; }
    }

    class TestVoiture{
    public static void main( String args[] ) {
    VoitureRenault v = new Laguna();
    System.out.println( "Pays d'origine Laguna : " + v.getPaysOrigine() );
    System.out.println( "Vitesse max Laguna : " + v.getVitesseMax() );

    }
    }

    Ça me semble assez propre