Je me rends compte que je vais flamber pour ne pas simplement écrire un test moi-même ... mais je suis curieux de connaître l'opinion des gens, pas seulement la fonctionnalité, alors ... voilà ...Puis-je ajouter à une liste privée directement via le getter?
J'ai une classe qui a une liste privée. Je veux ajouter à cette liste privée à travers la méthode publique getMyList().
alors ... cela fonctionnera-t-il?
public class ObA{
private List<String> foo;
public List<String> getFoo(){return foo;}
}
public class ObB{
public void dealWithObAFoo(ObA obA){
obA.getFoo().add("hello");
}
}
merci Jon. Dans mon scénario, ObA est un DTO, j'ajoute à l'un de ses membres à travers une classe de service ... Que suggéreriez-vous est l'approche préférée, en supposant que je veux garder le DTO aussi libre que possible du comportement (sens, je J'aimerais être fondamentalement un détenteur de données factice qui n'a pas de logique métier à l'intérieur). –
euh ... Je voulais dire que je voudrais * que ce soit ...Je crains personnellement que je n'ai pas le choix en tant que détenteur de données fictives :) –
Si c'est vraiment * un * être un cours "stupide", et tous ses clients sauront * que * la collection peut très bien être modifié par d'autres appelants, alors c'est correct d'aller avec comme il est. Je documenterais ceci très explicitement - quelque chose comme: "Cette propriété renvoie une référence directe à la collection de sauvegarde: toutes les modifications apportées via cette référence seront vues par les autres appelants." –