作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题是opinion-based .它目前不接受答案。
想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.
5年前关闭。
Improve this question
我正在通过阅读 Head First Design Patterns 来学习设计模式,并且我刚刚完成了关于状态模式的章节。但是,有一件事我没有得到:
在书中,有状态的类称为Context,而实际的状态实现State接口(interface)。当给书一个请求时,使用这里的方法来改变状态:
最佳答案
您提到的方法的问题是,引用 State 对象的任何其他对象都无法在您描述的场景中获得更新。正如您所描述的,State 可以返回另一个具有更新 State 的 State,并且 Context 可以用更新的 State 替换其对 State 的引用,但是任何其他引用 State 的对象现在都将有一个悬空引用,而不是上下文所指。
关于design-patterns - 状态模式 : Which class should I trust to update the state?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6916540/
我是一名优秀的程序员,十分优秀!