设计模式
J-QK
须知少时凌云志
一入代码岁月催
展开
-
大话设计模式----外观模式
外观模式:隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。 优点:1、减少系统相互依赖。 2、提高灵活性。 3、提高了安全性。 缺点:不符合开闭原则,如果要改东西很麻烦,继承重写都不合适。 实例: public interface Shape { void draw(); } public class Rectangle implements Shape { @Overrid.转载 2021-01-08 14:59:05 · 48 阅读 · 0 评论 -
大话设计模式----迪米特法则
迪米特法则:也称最少知识原则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。 意图:降低类与类之间的耦合,在类的设计上,每一个类都应该尽量降低成员的访问权限,类之间耦合越弱,越有利于重复利用 ...原创 2021-01-07 15:52:16 · 70 阅读 · 0 评论 -
大话设计模式----模板方法模式
模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法实得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 主要解决:一些方法通用,却在每一个子类都重新写了这一方法。 何时使用:有一些通用的方法。 如何解决:将这些通用算法抽象出来。 关键代码:在抽象类实现,其他步骤在子类实现。 优点:1、封装不变部分,扩展可变部分。 2、提取公共代码,便于维护。 3、行为由父类控制,子类实现。 缺点:每一个不同的实现都需要一个子类来实现,导致类的个数增加,使得系统更加庞大.原创 2021-01-07 15:33:10 · 60 阅读 · 0 评论 -
大话设计模式----原型设计模式
原型设计模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 主要解决:在运行期建立和删除原型。 如何解决:利用已有的一个原型对象,快速地生成和原型对象一样的实例。 优点:1、性能提高。 2、逃避构造函数的约束。 缺点:1、配备克隆方法需要对类的功能进行通盘考虑,这对于全新的类不是很难,但对于已有..原创 2021-01-07 15:09:46 · 78 阅读 · 0 评论 -
大话设计模式----工厂方法模式
工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类原创 2021-01-06 17:22:27 · 82 阅读 · 0 评论 -
大话设计模式----简单工厂模式
工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 主要解决:主要解决接口选择的问题。 何时使用:我们明确地计划不同条件下创建不同实例时。 如何解决:让其子类实现工厂接口,返回的也是一个抽象的产品转载 2021-01-06 17:06:46 · 70 阅读 · 0 评论 -
大话设计模式----代理模式
代理模式:对其他对象提供一种代理,来控制对这个对象的访问 分类: 静态代理与动态代理(JDK动态代理和cglib动态代理) 优点: 职责清晰 真实角色只需关注业务逻辑的实现,非业务逻辑部分,后期通过代理类完成即可。 高扩展性 不管真实角色如何变化,由于接口是固定的,代理类无需做任何改动。 缺点: 很明显的一点就是反射机制,没有高安全性,性能也相对来讲低一些。 使用场景 (1)设计模式中有一个设计原则是开闭原则,是说对修改关闭对扩展开放,我们在工作中有时会接手很多前人的代码,里面代码逻...原创 2021-01-06 14:25:24 · 80 阅读 · 0 评论 -
大话设计模式----装饰器模式
1、简单工程模式 工厂:就是生成bean的类---创建型模式 2、策略模式 策略:不因算法的变化,而改变客户端的调用(商品收银程序实例) 3、单一职责原则(手机干不过照相机) 4、开放-封闭原则(考研or工作) 既:可以扩展但不可以修改的原则(一国两制) 新需求来了,不应该是修改原有代码,而应该是新增代码解决 5、依赖倒转原则 6、装饰者模式 ...原创 2021-01-06 11:30:01 · 115 阅读 · 0 评论