java设计模式
文章平均质量分 92
骑蜗牛追梦者
这个作者很懒,什么都没留下…
展开
-
详解java设计模式(七)之享元模式(结构型)
引言:享元模式的主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。我们在日常开发中经常遇到线程池的概念。所谓池就是一些对象集合,为了避免对象无限被创建,并且待创建的对象都是相似的。一.享元模式:FlyWeightFactory负责创建和管理享元单元,当一个客户端请求时,工厂需要检查当前对象池中是否有符合条件的对象,如果有,就返回原创 2017-04-25 15:50:31 · 618 阅读 · 0 评论 -
详解java设计模式(二)之工厂模式上篇(创建型)
学习设计模式最重要的事是如何选择应用场合。我们平时就要多思考为什么要使用这种设计模式?这样才能在解决问题时,合适的选择设计模式。一.工厂模式初识1.为什么使用工厂模式 平时我们在创建对象时,一般都是直接使用关键词new一个实例对象,并将需要的构造参数传入,这就要求我们的客户必须了解对象的细节才能完成对象的创建工作。这样会导致紧耦合,不利于程序的扩展性和维护。原创 2017-03-09 09:56:41 · 402 阅读 · 0 评论 -
详解java设计模式(三)之策略模式(行为型)
引言:依稀记得我们本科时学过各种排序算法,比如冒泡排序,二分排序,归并排序等等。这些算法在功能上是一致的,只是其中的实现方式不同,时间复杂度和空间复杂度的差别而已。但是当我们作为系统开发者时,需要为用户提供相同问题不同的算法的实现。这时我们可以考虑使用策略模式来解决问题。一.策略(Strategy)模式理解策略模式定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化不会影响到使用原创 2017-03-10 11:36:43 · 330 阅读 · 0 评论 -
详解java设计模式(四)之迭代器模式(行为型)
引言:熟悉数据库编程的同学都知道当我们需要获取数据库中的结果集合时,我们使用的是系统系统提供的迭代方法来进行数据的获取。这种设计模式就是迭代器模式。迭代器模式在我们平时使用的java集合中十分常见。如果我们访问arrayList,hashSet,hashMap等聚集对象,我们都可以通过聚集对象提供的迭代器接口来获取数据。这种设计模式本质上来说就是屏蔽了聚集对象访问的细节,提供统一的接口访问,符合开闭。原创 2017-03-11 11:04:18 · 518 阅读 · 0 评论 -
java设计模式之三大分类,六大原则
一.设计模式定义(Design Patterns)设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决转载 2017-03-11 11:18:19 · 5006 阅读 · 0 评论 -
详解java设计模式整理列表
java设计模式一共分为3种类型,分别为创建型,行为型,结构型。我们从简单到复杂依次展开。关于java设计模式的博客我之后会陆续更新。设计原则与分类java设计模式之三大分类,六大原则一.创建型1. java设计模式(一)之单例模式(创建型)2.详解java设计模式(二)之工厂模式上篇(创建型)二.行为型1. 详解原创 2017-03-11 11:28:55 · 444 阅读 · 0 评论 -
详解java设计模式(五)之代理模式上篇(结构型)
一.认识代理模式1.定义:给某一个对象提供一个代理,并由代理对象控制对原对象的引用。这种角色类似与我们平时生活中见到的中介,首先中介没有房子,只要房主有房子,房主把房子委托给中介。中介替房主找租客,而不需要房主直接与租客联系。使用代理模式创建代理对象,让代理对象控制目标对象的访问(目标对象可以是远程的对象、创建开销大的对象或需要安全控制的对象),并且可以在不改变目标对象的情况下添加原创 2017-03-11 14:03:34 · 347 阅读 · 0 评论 -
详解java设计模式(五)之代理模式下篇(结构型)
引言:一般来说,对代理模式而言,一个主题类与一个代理类一一对应,这也是静态代理模式的特点。但是,也存在这样的情况,有n各主题类,但是代理类中的“前处理、后处理”都是一样的,仅调用主题不同。也就是说,多个主题类对应一个代理类,共享“前处理,后处理”功能,动态调用所需主题,大大减小了程序规模,这就是动态代理模式的特点。一.jdk下的动态代理基础知识1,Java.lang.reflect.P原创 2017-03-12 11:23:23 · 333 阅读 · 0 评论 -
详解java设计模式(六)之观察者模式(行为型)
一.观察者模式1.定义:观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让它们能够自动更新自己。2.角色:1)抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提供一个接口,可以增加和删除观察者角色。一般用一个抽象类和接口来实现原创 2017-03-12 16:49:41 · 460 阅读 · 0 评论 -
详解java设计模式(一)之单例模式(创建型)
单例模式是在日常程序开发中经常使用的设计模式,一般用来受限资源的访问上,如数据库连接池,系统管理器,驱动程序等,通常都是单例模式。单例模式的实现方式有多种,但在日常开发中常用的主要有:饿汉式,懒汉式。 单例模式通常具有如下特点: 1)单例类只能有一个实例。 2)单例类必须自己创建自己的唯一实例。 3)单例类必须给所有其他对象提供这一实例。单例模式原创 2017-03-07 20:54:47 · 386 阅读 · 0 评论