不可变的集合
本文关键字:集合 不可变 | 更新日期: 2023-09-27 18:16:37
我使用只读集合来防止用户修改我的缓存数据,但是项目本身当然是可变的。有没有办法防止这种行为?
米歇尔要么使缓存项本身不可变,要么传递对象的副本
您可以设置private构造函数-因此只有在项目内部才能创建实例。
还可以使用构造函数来放置只读值....
一种方法是同时拥有每个业务模型对象的不可变和可变版本。我在这里写了一篇文章:http://rickyhelgesson.wordpress.com/2012/07/17/mutable-or-immutable-in-a-parallel-world/