//On est pas obligé d'avoir une interface IMoveable, c'est pour l'exemple interface IMoveable { void OuvrirLentement (int speed); // pas obligatoirement void } //... //ainsi IMoveable moveable = monObjet.AjouterEffet (this); moveable.OuvrirLentement (vitesse); //et donc monObjet .AjouterEffet (this) // donne un IMoveable .OuvrirLentement (vitesse); // méthode de IMoveable