2021
06-11
06-11
Java设计模式之原型模式详解
一、前言原型模式是一种比较简单的模式,也非常容易理解,实现一个接口,重写一个方法即完成了原型模式。在实际应用中,原型模式很少单独出现。经常与其他模式混用,他的原型类Prototype也常用抽象类来替代。该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。在Java中,复制对象是通过clone()实现的,先创建一个原型类,通过实现Cloneable接口publicclassPrototypeimplementsCloneabl...
继续阅读 >
一、什么是抽象工厂模式为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类,这称之为抽象工厂模式(AbstractFactory)。我们并不关心零件的具体实现,而是只关心接口(API)。我们仅使用该接口(API)将零件组装称为产品。二、示例程序 1、抽象的零件:Item类packagecom.as.module.abstractfactory;/***抽象的零件*@authorAndy*@date2021/4/2923:16*/publicabstractclassItem{prote...
一、前言各个部门协同合作完成一个任务,每个部门都有各自的职责,一个部门完成后,变回转交给下一个部门,直到所有部门都处理了,这个任务才完成。将请求与处理解耦。处理者只需要关注自己感兴趣的请求进行处理,对于不感兴趣的请求,直接转发给下一个节点对象。二、登录校验举例。1、校验用户名或密码是否为空。2、校验用户名是否存在。3、校验是否有权限。@DatapublicclassMember{privateStringloginName;private...
一、观察者模式是什么?当对象间存在一对多关系时,则使用观察者模式(ObserverPattern)。当一个对象被修改时,则会自动通知依赖它的对象。观察者模式属于行为型模式。人话:就像微信公众号推送消息,订阅的人能收到,没订阅的收不到,还可以取消/添加订阅二、模式分析2.1四个角色抽象主题(抽象被观察者角色):也就是一个抽象主题,它把所有对观察者对象的引用保存在一个集合中,每个主题都可以有任意数量的观察者。抽象...
一、装饰模式引入例子一个快餐店计算价格问题举例:快餐店有炒面、炒饭这些快餐,可以额外附加鸡蛋、火腿、培根这些配菜,加配菜需要额外加钱,并且每个配菜的价钱不一样,计算快餐价格如何实现?1.1一般设计1.2使用继承方式的一般设计存在的问题横向扩展性不好:如果要再加一种配料(火腿肠),我们就会发现需要给FriedRice和FriedNoodles分别定义一个子类。如果要新增一个快餐品类(炒河粉)的话,就需要定义更多的子,会出现...
一、什么是设计模式设计模式(Designpattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应...