我意识到我会因为不仅仅是自己写一个测试而感到愤怒...但是我很好奇人们的观点,而不仅仅是功能,所以...这里去...我可以通过getter直接添加到私人列表吗?
我有一个拥有私人清单的班级。我想通过public getMyList()方法添加到该私人列表中。
所以...这项工作?
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");
}
}
感谢乔恩。在我的场景中,ObA是一个DTO,我通过一个服务类将其添加到其成员之一中...假设我想尽可能保持DTO尽可能没有行为,那么您会建议什么是首选方法(也就是说,我我喜欢基本上是一个虚拟的数据持有者,没有业务逻辑)。 – 2009-05-21 21:31:40
嗯...我的意思是我想*它是...我个人恐怕没有办法成为一个虚拟数据持有者:) – 2009-05-21 21:32:31
如果它*真的*意味着是一个“哑巴”类,并且它的所有客户都会*知道*这个集合很可能是由其他呼叫者修改,那么可以继续使用它。我会非常明确地记录这些 - 如下所示:“该属性返回对后备集合的直接引用:通过此引用所做的任何更改都会被其他调用者看到。” – 2009-05-21 21:34:19