摘要: 享元模式的主要目的是实现对象的共享,在Java的各种池技术中用得比较多, 如线程池,数据库连接池等。当一个客户端请求时,工厂需要检查当前对象池中是否有符合条件的对象,如果有,就返回已经存在的对象,如果没有,则创建一个新对象。 这样可以节约内存。 数据库连接池: 阅读全文
posted @ 2017-11-24 19:48 M理论 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 组合模式又叫部分整体模式,在处理类似树形结构的问题时常用。 阅读全文
posted @ 2017-11-24 19:45 M理论 阅读(1199) 评论(0) 推荐(0) 编辑
摘要: 桥接模式就是把事物与其具体的实现相分离,抽象化与实现化解耦。 测试类: 输出: 阅读全文
posted @ 2017-11-24 19:44 M理论 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 外观模式是为了解决类与类之家的依赖关系的, 如IOC一样,把存在很多依赖关系的类放在一起统一管理, 就像一个电脑里面有很多零件,但是用电脑的人只能看到机箱。 测试类: 输出: 阅读全文
posted @ 2017-11-23 23:25 M理论 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 代理模式一般在下列场景使用: 需要对原有方法进行改进,又不要影响原有的方法。 此时生成一个代理类调用原有的方法,对产生的结果进行控制,这就叫做代理模式。 阅读全文
posted @ 2017-11-23 23:21 M理论 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 装饰对象和被装饰对象实现同一个接口 装饰对象持有被装饰对象的实例,给被装饰模式增添一些新的功能。 输出: 应用场景: 1、需要增加一个类的对象。 2、动态的为一个对象增加功能,且不影响原有的功能。 阅读全文
posted @ 2017-11-23 23:03 M理论 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 适配器模式属于七种结构性模式(适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式)之一: 适配器模式又分三种:类的适配器模式、对象的适配器模式、接口的适配器模式。 适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。 先看类的 阅读全文
posted @ 2017-11-23 16:22 M理论 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 原型模式就是利用一个克隆”原型“来产生新对象的一种模式, 克隆又分浅克隆与深克隆, 浅克隆:将一个对象复制后,基本数据类型的变量都会重新创建,而引用类型,指向的还是原对象所指向的。 深克隆:将一个对象复制后,不论是基本数据类型还有引用类型,都是重新创建的。简单来说,就是深复制进行了完全彻底的复制,而 阅读全文
posted @ 2017-11-16 23:32 M理论 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 建造者模式在实际工作中常常是在测试类造数据的时候使用,继承既定的Builder类之后, 新的Builder类可以方便的“建造“各种属性。具体见如下代码。 先有默认的既定Builder类: 然后有这个Builder类需要建造的产品类: 再有这个产品类对应的Builder实现类: 测试类: 阅读全文
posted @ 2017-11-16 22:24 M理论 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 普通工厂模式有一个问题,就是需要拓展程序时需要修改原来的代码, 违反了程序的对拓展开放,对修改关闭的原则,为了解决这个问题就有了抽象工厂模式。 需要增加新的功能的时候直接增加工厂类,这样就避免了修改原有的代码,实现了功能的拓展。 先有产品的抽象类,再有工厂的抽象类,再有二者的实现类,具体见代码。 产 阅读全文
posted @ 2017-11-16 15:23 M理论 阅读(515) 评论(0) 推荐(0) 编辑