上一页 1 2 3 4 5 6 7 8 ··· 10 下一页
摘要: 迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不需要暴露集合对象的内部结构。迭代器模式将遍历操作封装在迭代器对象中,使得客户端可以通过迭代器对象依次访问集合中的元素。 迭代器模式有三个主要角色: 迭代器(Iterator):定义了访问和遍历集合对象的接口,包含用于获 阅读全文
posted @ 2024-03-15 11:29 野码 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 中介者模式是一种行为型设计模式,它通过封装一系列对象之间的交互,使得对象之间的通信和协作更加松散和灵活。中介者模式将复杂的交互逻辑集中在中介者对象中,减少了对象之间的直接耦合。 中介者模式有四个主要角色: 抽象中介者(Mediator):定义了中介者对象的接口,用于协调并管理对象之间的交互。可以是抽 阅读全文
posted @ 2024-03-15 10:51 野码 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 备忘录模式是一种行为型设计模式,它可以捕获一个对象的内部状态,并在需要时将对象恢复到之前的状态。备忘录模式通过将对象的状态封装在备忘录对象中,使得可以在不暴露对象内部实现细节的情况下进行状态的保存和还原。 备忘录模式有三个主要角色: 发起人(Originator):负责创建备忘录对象,并可以通过备忘 阅读全文
posted @ 2024-03-15 09:42 野码 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 观察者模式是一种行为型设计模式,它定义了对象之间的一对多依赖关系,使得当一个对象的状态发生改变时,其相关依赖对象会自动收到通知并更新。 观察者模式有四个主要角色: 主题(Subject):定义了观察者的注册、删除和通知方法。主题可以是具体类或接口。 具体主题(Concrete Subject):继承 阅读全文
posted @ 2024-03-14 10:03 野码 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 状态模式是一种行为型设计模式,它允许一个对象在其内部状态改变时改变其行为。状态模式将对象的行为封装在不同的状态类中,通过改变状态类来改变对象的行为。 状态模式有三个主要角色: 环境类(Context):定义了一个状态对象的引用,并在需要的时候调用状态对象的方法。环境类可以根据内部状态的改变来改变行为 阅读全文
posted @ 2024-03-14 09:44 野码 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 策略模式是一种行为型设计模式,它定义了一系列的算法,并将每个算法封装到独立的类中,使它们可以互相替换。策略模式使得算法可以独立于客户端而变化,客户端可以根据需要选择不同的算法。 策略模式有三个主要角色: 环境类(Context):它持有一个策略对象的引用,并在需要的时候调用策略对象的方法。环境类可以 阅读全文
posted @ 2024-03-14 09:17 野码 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 模板模式是一种行为型设计模式,它定义了一个抽象类作为算法的骨架,而将一些步骤的具体实现延迟到子类中。模板模式提供了一个统一的算法流程,但允许子类根据需要重写算法的具体步骤。 模板模式有三个主要角色: 抽象类(Abstract Class):定义了算法的骨架,包含了一个模板方法以及一些抽象方法或钩子方 阅读全文
posted @ 2024-03-12 11:01 野码 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 访问者模式是一种行为型设计模式,它允许在不改变被访问对象结构的前提下,定义对这些对象的新操作。访问者模式将操作和对象结构分离,使得可以在不修改对象结构的情况下添加新的操作。 访问者模式有四个主要角色: 抽象访问者(Visitor):定义了访问者可以访问的对象的接口,包含了一系列的访问方法,每个方法对 阅读全文
posted @ 2024-03-12 10:45 野码 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 代理模式是一种结构型设计模式,它提供了一个代理对象来控制对其他对象的访问。代理对象可以作为目标对象的代表,以控制对目标对象的访问、限制或增加功能。 代理模式有三个主要角色: 抽象主题(Subject):定义了目标对象和代理对象的公共接口,可以是抽象类或接口。 真实主题(Real Subject):实 阅读全文
posted @ 2024-03-12 10:13 野码 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 享元模式是一种结构型设计模式,它通过共享细粒度的对象来最大限度地减少内存使用和对象创建的数量。享元模式通过将共享对象的状态外部化,使得对象可以共享,并提供了一个工厂类来管理共享对象的创建和获取。 享元模式有五个主要角色: 享元接口(Flyweight):定义了共享对象的接口,包含了需要外部化的状态的 阅读全文
posted @ 2024-03-12 09:57 野码 阅读(10) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页