随笔分类 -  设计模式

摘要:一、装饰模式的类图如下 在装饰模式中的角色有: ● 抽象构件(Component)角色:就是需要装饰者的基类 ● 具体构件(ConcreteComponent)角色:具体需要装饰的实例类 ● 装饰(Decorator)角色:装饰物/装饰物 的基类 ● 具体装饰(ConcreteDecorator)角 阅读全文
posted @ 2018-01-03 00:42 胡子珩 阅读(210) 评论(0) 推荐(0)
摘要:方法一:饿汉式 饿汉式在类创建的同时就实例化一个静态对象出来,不管之后会不会使用这个单例,都会占据一定的内存,但是相应的,在第一次调用时速度也会更快,因为其资源已经初始化完成。饿汉式天生就是线程安全的,可以直接用于多线程而不会出现问题 方法二:静态方法类 第一次加载Singleton类时并不会初始化 阅读全文
posted @ 2017-10-13 10:27 胡子珩 阅读(135) 评论(0) 推荐(0)
摘要:简单工厂不属于23种GOF设计模式,但是也是一种比较常见的设计模式 特点:有一个工厂类。负责依据传入的参数,生成对应的具体产品对象,也就是说通过工厂类对创建对象做了统一的管理。 优点:产品使用者不需要关心产品类的创建过程,与具体产品的实现类达到解耦的效果; 缺点:违背"开放--封闭"原则(OCP), 阅读全文
posted @ 2017-09-03 20:02 胡子珩 阅读(198) 评论(0) 推荐(0)
摘要:定义: 代理模式是代理类替代被代理的类执行一些行为,简而言之就是用一个对象来代表另一个对象。 为什么要是用代理类: 为被代理的类提供访问控制,也就是降低了被代理的类与其他类的耦合,举个例子,明星拍吻戏的时候不愿意怎么办呢,就可以找个替身,这个替身不就是个代理类吗,降低明星与其他人的接触。 代理模式的 阅读全文
posted @ 2017-09-03 14:58 胡子珩 阅读(615) 评论(0) 推荐(0)
摘要:一、四人帮(GOF) 创者是四个人,他们合著出来设计模式的书。 他们提出面向对象设计原则: 1.对接口编程而不是对实现编程 2.优先使用对象组合而不是继承 二、设计模式类型 总共提到23中设计模式,这些模式可以分成三大类: 创建性模式, 结构性模式、 行为型模式 1.创建型模式:这些设计模式提供了一 阅读全文
posted @ 2017-08-13 21:50 胡子珩 阅读(154) 评论(0) 推荐(0)