Bonjour,

Mon problème est le suivant :

J'ai plusieurs classes (ex : ListResponse, DeleteResponse, etc) qui hérite d'une classe Response. Chaque classe fait autre chose en fonction d'un type (ex : list, delete, etc).

Mon objectif est de récupérer la classe en fonction de ce type, sans passer par un traitement du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
if(type.equals("list")){
 ListResponse resp = new ListResponse();
} else if (type.equals("delete")){
DeleteResponse resp = new DeleteResponse();
}
J'aimerai plutôt enregistrer chaque type de réponse dans une HashMap, du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
HashMap<String, Response> map = new HashMap<String, Response>();
map.add("list", new ListResponse());
map.add("delete", new DeleteResponse());
et récupérer la classe voulue en fonction du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Response resp = (Response)map.get("list");
Est-ce la bonne procédure? Est-ce que mon objet "resp" sera du type souhaité?