[](()01 工厂方法
现在女生比较喜欢喝奶茶,书亦和一点点都是有卖奶茶的,可能口味不同,但是不管你去哪家店,你都只需要说来两杯奶茶,服务员就会给你做了。书亦和一点点奶茶的 Factory 工厂模式:客户类和工厂类分开。
[](()
消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。
[一起吹水聊天](()
[](()02 建造者模式
女孩子最爱听的就是「我爱你」这句话了,见到不同地方的 MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到 MM 我只要按对应的键,它就能够用相应的语言说出「我爱你」这句话了,国外的 MM 也可以轻松搞掂,这就是我的「我爱你」builder。
建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。
[](()03 抽象工厂
当年很火的6块钱麻辣烫大家都还记得吧。但是麻辣烫的口味有很多,每个MM的口味都记住那 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 显然不现实,所以我用Factory Method 模式,带着 MM 到服务员那儿,说,具体要什么口味的麻辣烫呢,让 MM 直接跟服务员说就行了。
[](()
工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。
[一起吹水聊天](()
[](()04 原型模式
跟 MM 用微信 聊天,一定要说些土味情话了,我搜集了好多肉麻的情话,需要时只要 copy 出来放到 微信里面就行了,这就是我的情话 prototype
了。(100 块钱一份,你要不要)
原始模型模式:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。原始模型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。缺点是每一个类都必须配备一个克隆方法。
俺有 6 个漂亮的老婆,她们的老公都是我,我就是我们家里的老公 Sigleton
,她们只要说道「老公」,都是指的同一个人,那就是我 (刚才做了个梦啦,哪有这么好的事)
单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的 “单一实例” 的需求时才可使用。