![](https://img-blog.csdnimg.cn/20190829154233673.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
jonathanzhan
这个作者很懒,什么都没留下…
展开
-
UML中的类图及常见类图关系
UML(统一建模语言,Unified Modeling Language),是用来设计软件蓝图的可视化建模语言。从目标系统的不同角色出发,分为用例图,类图,对象图,状态图,活动图,时序图,协作图,构件图,部署图等9种图最近重新研究了设计模式,在整理总结时,用到了类图,发现经常混淆类图的关系,所以特意做下整理。文章目录类、接口、类图类接口类图类之间的关系依赖关系关联关系聚合关系组合关系泛化关系...原创 2019-06-14 11:13:32 · 27917 阅读 · 1 评论 -
java设计模式之策略模式
在现实生活中常常遇到实现某种目标存在多种方案可供选择的情况,例如出行旅游可以乘坐火车,飞机,或者自驾等。在软件开发中,也常常遇到类似的情况,当实现某个功能存在多种算法或者策略,我们可以根据不同的条件选择不同的算法来实现该功能。比如排序算法,我们可以选择冒泡排序,选择排序,插入排序,二叉树排序等如果使用多重条件转移语句实现(即硬编码),不但使条件语句变得复杂,而且增加了代码的复杂程度,不易维护,...原创 2019-07-30 17:47:38 · 232 阅读 · 0 评论 -
java设计模式之单例模式
单例模式是设计模式中最简单的模式之一。通常,普通类的构造函数是公有的,外部类可以通过 new 构造函数()来生成多个实例,但是,如果将类的构造函数设置为私有,外部类就无法调用该构造函数,也就无法生成多个实例。这时该类自身必须定义一个静态私有实例,并向外提供一个静态的公有函数用于创建或获取该静态私有实例。单例模式的定义与特点单例(singleton)模式的定义:指一个类只有一个实例,且该类能自...原创 2019-08-19 18:53:09 · 186 阅读 · 0 评论 -
java设计模式之建造者模式
在软件的开发过程中,有时需要创建一个复杂的对象,这个对象通常由多个子部件按照一定的步骤组合而成。例如计算机有CPU,主板,内存,硬盘,显卡,机箱,显示器等组装而成,采购员不可能自己去组装计算机,而是将计算机的配置要求告诉给计算机销售,销售安排技术人员去组装计算机,然后交付。生活中有很多这样的例子,比如房屋的建造,其空间,装修,家具等特性都有所差异,汽车的各个配件等等。以上提到的产品都是由多个部...原创 2019-08-20 11:20:16 · 285 阅读 · 0 评论 -
java设计模式之原型模式
在有些系统中,存在大量的相同或相似对象的创建问题,如果用传统的构造函数来创建对象,会比较复杂且耗时耗资源,用原型模式生成对象就很高效,就像孙悟空拔下猴毛变出很多孙悟空一样简单。原型模式的定义与特点原型(prototype)模式的定义如下:用一个已创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方法创建对象非常高效,根本...原创 2019-08-20 15:33:00 · 292 阅读 · 0 评论 -
java设计模式之工厂及抽象工厂模式
在现实生活中社会分工越来越细,越来越专业化。各种产品有专门的工厂生产,彻底告别了自给自足的小农经济时代,这大大缩短了产品的生产周期,提高了生产效率。同样,在软件开发中能否做到软件对象的生产和使用相分离呢?能否在满足“开闭原则”的前提下,客户随意增删或改变对软件相关对象的使用呢?定义工厂(factory)模式属于创建型模式,定义了一个创建对象的工厂接口,将产品对象的实际创建工作推迟到具体的...原创 2019-08-16 12:05:36 · 233 阅读 · 0 评论 -
java设计模式之观察者模式
在现实世界中,很多对象并不是独立存在的,其中一个对象的行为发生改变可能会导致一个或者多个的其他对象的行为也发生改变。比如微信公众号,不定时的发布一些消息,关注公众号就可以收到消息,取消关注就收不到消息。还有当我们开车到路口时,遇到红灯会停下,绿灯则通行等等在软件世界也是这样,比如图表中的数据与折线图,饼状图,柱状图之间的关系,MVC模式中的模型与视图的关系,比如发布订阅模式等等。概述定...原创 2019-08-12 18:42:49 · 219 阅读 · 0 评论 -
java设计模式之代理模式
在有些情况下,客户不能或者不想直接访问另一个对象,这时需要找一个中介帮忙来完成某项任务,这个中介就是代理对象.比如租房子,不一定直接去找现房,可以找中介帮忙,找工作可以通过猎头等等.代理模式的定义与特点代理模式的定义:由于某些原因需要给某对象提供一个代理以控制对该对象的访问,这时访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介.代理模式的主要优点有:代理...原创 2019-08-29 15:54:36 · 296 阅读 · 0 评论