Java设计模式
Snow_Ice_Yang
这个作者很懒,什么都没留下…
展开
-
设计模式(六) 代理模式
在有些情况下,一个客户不能或者不想直接访问另一个对象,这时需要找一个中介帮忙完成某项任务,这个中介就是代理对象。例如,购买火车票不一定要去火车站买,可以通过 12306 网站或者去火车票代售点买。又如找女朋友、找保姆、找工作等都可以通过找中介完成。在软件设计中,使用代理模式的例子也很多,例如,要访问的远程对象比较大(如视频或大图像等),其下载要花很多时间。还有因为安全原因需要屏蔽客户端直接访问真实对象,如某单位的内部数据库等。代理模式的定义与特点代理模式的定义:由于某些原因需要给某对象提供一个代理原创 2020-08-26 11:39:30 · 137 阅读 · 0 评论 -
设计模式(五) 建造者模式
在软件开发过程中有时需要创建一个复杂的对象,这个复杂对象通常由多个子部件按一定的步骤组合而成。例如,计算机是由 OPU、主板、内存、硬盘、显卡、机箱、显示器、键盘、鼠标等部件组装而成的,采购员不可能自己去组装计算机,而是将计算机的配置要求告诉计算机销售公司,计算机销售公司安排技术人员去组装计算机,然后再交给要买计算机的采购员。生活中这样的例子很多,如游戏中的不同角色,其性别、个性、能力、脸型、体型、服装、发型等特性都有所差异;还有汽车中的方向盘、发动机、车架、轮胎等部件也多种多样;每封电子邮件的发件人、收原创 2020-08-26 08:27:55 · 202 阅读 · 0 评论 -
设计模式(四) 抽象工厂模式
前面介绍的工厂方法模式中考虑的是一类产品的生产,如畜牧场只养动物、电视机厂只生产电视机、计算机软件学院只培养计算机软件专业的学生等。同种类称为同等级,也就是说:工厂方法模式只考虑生产同等级的产品,但是在现实生活中许多工厂是综合型的工厂,能生产多等级(种类) 的产品,如农场里既养动物又种植物,电器厂既生产电视机又生产洗衣机或空调,大学既有软件专业又有生物专业等。模式的定义与特点抽象工厂(AbstractFactory)模式的定义:是一种为访问类提供一个创建一组相关或相互依赖对象的接口,且访问类.原创 2020-08-25 17:04:30 · 162 阅读 · 0 评论 -
原型模式
奖状创建成功!张三同学:在2016学年第一学期中表现优秀,被评为三好学生。韶关学院奖状拷贝成功!李四同学:在2016学年第一学期中表现优秀,被评为三好学生。韶关学院原创 2020-08-25 14:54:21 · 158 阅读 · 0 评论 -
设计模式(七) 外观模式
外观模式(Facade Pattern) 为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。介绍意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接...原创 2019-07-19 17:21:28 · 165 阅读 · 0 评论 -
设计模式(八) 模板方法模式
定义定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。它是一种类行为型模式。该模式的主要优点如下。它封装了不变部分,扩展可变部分。它把认为是不变部分的算法封装到父类中实现,而把可变部分算法由子类继承实现,便于子类继续扩展。 它在父类中提取了公共的部分代码,便于代码复用。 部分方法是由子类实现的,因此子类可以通过...原创 2019-07-23 17:55:19 · 137 阅读 · 0 评论 -
设计模式(五) 命令模式
命令模式将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。命令模式通过这种封装的方式实现将客户端和接收端解耦。类型:行为型模式(类与类之间的行为型模式)命令模式的几个角色: 抽象命令接口Command:定义命令的接口,声明执行的方法。 具体的命令对象ConcreteCommand:持有具体的接受者对象,完成具体的具...原创 2019-07-16 17:34:48 · 152 阅读 · 0 评论 -
单例模式
概念:java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、静态内部类单例。单例模式有以下特点:1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有其他对象提供这一实例。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的...原创 2019-07-12 14:34:37 · 119 阅读 · 0 评论 -
设计模式(三)工厂模式
一 概述:属于创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。需要生成的对象叫做产品 ,生成对象的地方叫做工厂 。使用场景:在任何需要生成复杂对象的地方,都可以使用工厂方法模式。直接用new可以完成的不需要用工厂模式二 简单(静态)工厂:一个例子:我喜欢吃面条,抽象...原创 2019-07-11 17:39:48 · 234 阅读 · 0 评论 -
设计模式(二)装饰者模式
一.装饰者模式:定义动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更加有弹性的替代方案。组合和继承的区别继承。继承是给一个类添加行为的比较有效的途径。通过使用继承,可以使得子类在拥有自身方法的同时,还可以拥有父类的方法。但是使用继承是静态的,在编译的时候就已经决定了子类的行为,我们不便于控制增加行为的方式和时机。组合。组合即将一个对象嵌入到另一个对象中,由另一个对象...原创 2019-07-10 11:40:05 · 144 阅读 · 0 评论 -
设计模式(一)观察者模式
1.观察者模式模式简介定义观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。观察者模式结构图图 6-11 观察者模式的结构图在观察者模式中有如下角色: Subject:抽象主题(抽象...原创 2019-07-08 12:12:45 · 154 阅读 · 0 评论 -
设计模式总结
设计模式(一) 观察者模式设计模式(二)装饰者模式设计模式(三)工厂模式设计模式(四) 单例模式设计模式(五) 命令模式设计模式(六) 适配器模式设计模式(七) 外观模式...原创 2019-07-16 17:39:45 · 143 阅读 · 0 评论 -
设计模式(六) 适配器模式
适配器模式适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在适配器模式中,我们通过增加一个新的适配器类来解决接口不兼容的问题,使得原本没有任何关系的类可以协同工作。根据适配器类与适配者类的关系不同,适配器模式可分为对象适配器...原创 2019-07-18 17:27:09 · 164 阅读 · 0 评论