J'ai l'interface suivante:Puis-je réduire ce motif récurrent dans ma classe Java?
public interface Gravy {
public List<Giblet> getGiblets();
public Giblet getGiblet(String id);
public int getNumGiblets();
public void addGiblet();
public void removeGiblet(Giblet giblet);
public List<Carrot> getCarrots();
public Carrot getCarrot(String id);
public int getNumCarrots();
public void addCarrot();
public void removeCarrot(Carrot carrot);
public List<Gravy> getGravies();
public Gravy getGravy(String id);
public int getNumGravies();
public void addGravy();
public void removeGravy(Gravy gravy);
}
Comme vous pouvez le voir, j'avoir un motif récurrent dans mon Gravy
. Un objet Gravy
peut contenir des abats, des carottes et d'autres jus (plus petits). Tout ce qui peut être ajouté, retiré ou interrogé.
Deux choses à noter:
Carrot
s etGiblet
s ont un peu en commun avec l'autre, mais les deux diffèrent considérablement deGravy
s.je besoin d'ajouter d'autres éléments plus tard (donc la nécessité d'un refactoring) ...
Est-il possible de réduire le code ci-dessus afin que les « verbes » sont écrits seulement une fois ?
utiliser http://docs.oracle.com/javase/tutorial/extra/generics/? –