随笔分类 - 设计模式
摘要:简介:静态代理设计模式可以理解为实际操作对象的代理,这个代理拥有实际对象的所有接口,代理对象中持有着实际对象的引用,但是这个代理对象在客户端调用接口的时候,将这些请求进行拦截,对请求数据进行预处理(相当于Filter),可以在预处理中做判断如果满足条件放行实际对象操作,否则代理对象处理并返回。 有几
阅读全文
摘要:简介: 每种事物都有不同的状态,不同的状态会有不同的表现,通过更改状态从而改变表现的设计模式称为状态模式(state pattern) 下边会通过多个例子进行讲述,会有一些代码重用的类,请注意包名! 举例1: 人有多种心情,不同的心情会有不同的表现,这里先使用分支判断写个小例子 创建一个Person
阅读全文
摘要:简介: 经常网购的可能发现京东、淘宝等电商平台每到什么节日都会进行打折,这种打折就是一种策略,策略模式的意思呢,就是把不变的和易变的策略分离开,需要什么策略时候,把需要的策略传给执行体,而不是执行体内置这些策略。 举例1: 我们有一个CD播放器,cd播放器中如果内置了一些歌曲的话,那么我们只能听这些
阅读全文
摘要:简介: 一个类编写过程中,需要一个不能确定的对象,去执行一些操作,这个时候,我们需要使用一个抽象的方法或者已实现的方法来返回需要的对象,这个对象的实现,可以根据继承让子类覆盖重写,从而起到一个占位的作用,以及使对象更佳灵活。 举例: 类似前一篇博客的例子,同样以4s店为例,这次的4s店是厂家直营店,
阅读全文
摘要:简介: 抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 举例:每个汽车4s店和某个品牌工厂之间的关系,每个汽车4s店只会卖同一品牌的汽车,但是如果这一品牌汽车销量不好,效益不佳,那么4s店可以更换进货的工厂,从而更换其售卖的品牌。 分析:每个品牌的汽车都有一个品牌工
阅读全文
摘要:简介:工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,拒绝客服端程序员通过new创建需要的实例,并且是通过使用一个共同的接口来指向新创建的对象,
阅读全文
摘要:1.作用: 产生唯一实例,拒绝客户端程序员使用new关键字获取实例,即一个类只有一个实例。比如:有一个类用于读取配置文件生成一个Properties对象,只需要一个对象即可。如果每次用到就读取一次新建一个Properties实例,这样就会造成资源浪费,以及多线程的安全问题。单例模式区分懒汉式、饿汉式
阅读全文
摘要:作用: 装饰者设计模式的作用是使被装饰者的功能更强大,比如一把ak47装上消声器,装上瞄准镜,枪的使用方式不变,改变的是这把枪的功能更加强大,功能更多。 举例1: 女人可以通过化妆、受教育、礼貌 变身成化妆的女人(颜值+)、高智商的女人(IQ+)、有礼貌的女人(礼貌用语用的更多) 注意:为了显示出视
阅读全文