设计: 有状态对象和无状态对象 无状态对象 用于处理逻辑, 而不是持有数据把数据从一个有状态对象处理后传输到另一个有状态对象属性和字段都是临时的, 不共享, 无需持久化使用时随时创建, 随时丢弃 有状态对象 持用数据共享需要持久化保持内部数据一致版本, 身份, 值比较, HashCode数据访问: 遍历, 查找, 排序数据变化事件