- 博客(7)
- 收藏
- 关注
原创 设计模式——原型模式
这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此来减少数据库调用。在java中,克隆有两种,深克隆和浅克隆。在完成设计模式讲解之后会进行深克隆和浅克隆的学习。Java提供了一个标记接口——Cloneable,实现该接口完成标记,在JVM中具有这个标记的对象才有可能被拷贝。
2024-01-16 21:45:00 766 1
原创 设计模式——单例模式
这个非常的详细,本文仅仅抽取觉得重要的点进行记录。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。单例模式分为两种:懒汉和饿汉式。
2024-01-02 22:30:00 390
原创 设计模式——职责链
现使用职责链模式来模拟该过程,客户类(Client)模拟情报人员,首先向级别最低的班长(Banzhang)递交任务书(Mission),即军情,如果超出班长的权力范围,则传递给排长(Paizhang),排长如果也不能处理则传递给营长(Yingzhang),如果营长也不能处理则需要开会讨论。3、可能不容易观察运行时的特征,有碍于除错。ConcreteHandlerA, B:具体的处理者,处理它自己负责的请求,如果可以处理当前请求则处理,否则就将该请求交个后继者去处理,从而形成一个职责链。
2023-06-30 10:34:32 111
原创 设计模式之状态模式练习
某纸牌游戏软件中,人物角色具有人门级(Primary)、熟练级(Secondary),高手绍(Professional)和骨灰级(Final)四种等级,角色的等级与其积分相对应,游戏胜利将增加和分,失败则扣除积分。人门级具有最基本的游戏功能 play(),熟练级增加丁游戏胜利积分加倍功能doubleScore),高手级在熟练级基础上再增加换牌功能 changeCards(),骨灰级在高手级基础上再增加偷看他人的牌功能 peekCards()。类图这边就不画了,作者很懒,我就直接上代码吧。
2023-06-21 15:05:37 173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人