class ACons extends ArbreBinaire { Object étiquette; ArbreBinaire gauche, droit; ACons(Object étiquette, ArbreBinaire gauche, ArbreBinaire droit) { this.étiquette = étiquette; this.gauche = gauche; this.droit = droit; } // ... }On obtient ainsi des arbres génériques hétérogènes (ce qui signifie que les objets aux noeuds ne sont pas nécessairement du même type). Pour passer un argument d'un type primitif à une méthode demandant un objet, on a recours aux classes enveloppantes Integer, Double, etc. :
ArbreBinaire t = new ACons("toto", new ACons(new Integer(3), AVide.val(), AVide.val()), new ACons(new Double(0.4), AVide.val(), AVide.val()));
Rappelons que les chaînes littérales, comme "toto", sont des objets de classe String.