当前位置: 首页 > news >正文

流程图制作软件百度seo还有前景吗

流程图制作软件,百度seo还有前景吗,网站的做网站公司,网站搭建中企动力第一意图 复用已经存在的接口,与所需接口不一致的类。即将一个类(通常是旧系统中的功能类),通过适配器转化成另一个接口的实现。(简单来说,就是复用旧系统的功能,去实现新的接口) 我们举…

意图

复用已经存在的接口,与所需接口不一致的类。即将一个类(通常是旧系统中的功能类),通过适配器转化成另一个接口的实现。(简单来说,就是复用旧系统的功能,去实现新的接口)

我们举一个框架中使用的例子:springMVC中的dispatchServlet中,执行流程是先获取请求对应的映射方法全类名,然后找到该方法对应的适配器,这就是适配器模式的使用,因为springMVC需要执行方法后,返回一个ModelAndView对象。但是我们直接反射执行方法,是返回不了这个对象的,这就需要适配器模式上场帮我们去适配返回一个ModelAndView了。

我们举个生活中的例子:

适配器模式将一个类的程序设计接口转换成另一个接口术这很像变压器把一种电压变换成另一种电压。例如,美国的生活用电电压是110 V,而中国的电压是220 V。如果要在中国使用美国电器,就必须有一个能把220 V电压转换成110 V电压的变压器,这个变压器就是一个Adapter。

从下面两个图片我们可以知道适配器模式的本意:我们可以这样理解,220V插座提供的功能是220v供电的功能,任何电器只需要供电就能正常运作。美国电器同样需要供电,但是供电的类型有点特殊,需要110v的供电,但是我们项目中只有220v的接口,那么就需要一个转换,这个转换器就是我们后来所说的适配器,即Adapter。

那么美国电器,就是新的功能规范,需要的功能类型和旧接口是一致的,只是不能直接使用旧接口,所以需要适配器去对旧接口进行转换操作

原本中国的电器使用

 

使用变压器后的美国电器使用

 

类图描述

类的适配器模式结构

通过继承来实现可用的类结构

可以看出,Adaptee类没有Request方法(其实不算没有,Adaptee中的不能直接适配Request的功能),而客户期待这个方法。为了使客户能够使用Adaptee类,需要提供一个中间环节,即Adapter类,Adapter类实现了Target接口,并继承自Adaptee,Adapter类的Request方法重新封装了Adaptee的SpecificRequest方法,实现了适配的目的。因为Adapter与Adaptee是继承的关系,所以这决定了这个适配器模式是类的。

 

适配器模式涉及以下角色:

(1)目标(Target)角色: 是客户所期待的接口。因为java不支持多继承,所以Target必须是接口,不可以是类。

(2)源(Adaptee): 需要适配的类,也就是旧系统中已经有的类。

(3)适配器(Adapter)角色: 把源接口转换成目标接口,这一角色必须是类。

 

 

 请注意:适配器模式的要点是,新的目标接口所需要的功能跟旧接口的一致,但是又有一些差别,因此需要适配器Adapter来进行转换处理,而不是添加新的接口等,切勿跟装饰模式搞混了。

对象的适配器结构

跟类的适配器结构区别在于,Adapter中保持了一个旧的对象的引用,而不是通过继承来实现

 

例子:

假设目前有一个日期的工具类对象PersonDate,返回的内容是当前的时间戳,而此时,用户希望得到(年-月-日),也就是年月日这样类型的,于是这个新的规范,抽象为一个接口UserDate

首先创建PersonDate类

public class PersonDate {//返回当前日期的时间戳public Long getNowDate(){Date date=new Date();return date.getTime();}
}

然后创建新接口UserDate

public interface UserDate {//返回当前日期的格式化内容  年-月-日String getNowDateString();
}

创建适配器AdapterDate,这里采用对象适配器的方式,在适配器中保留旧对象的引用

public class AdapterDate implements UserDate{//保持旧实例的引用private PersonDate personDate;public AdapterDate(PersonDate personDate) {this.personDate = personDate;}//具体的转换方法@Overridepublic String getNowDateString() {//获取时间戳Long nowDate = personDate.getNowDate();//转化成date对象Date date=new Date(nowDate);SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");String dateString = format.format(date);return dateString;}
}

客户端测试:

public class Client {public static void main(String[] args) {//客户端使用旧的接口PersonDate personDate=new PersonDate();System.out.println(personDate.getNowDate());//使用适配器对象UserDate userDate=new AdapterDate(personDate);System.out.println(userDate.getNowDateString());}
}

运行结果:

 

 

小结:

到这里,我们可以知道适配器模式的理念,就是复用旧系统中的功能类,去适配新的接口,而新的接口,恰好需要和旧系统中对象相同的功能(不完全相同,但是大体一致),这时候就需要适配器去将旧功能对象去转化成为新接口的实现


文章转载自:
http://unsalable.dztp.cn
http://grounded.dztp.cn
http://ductule.dztp.cn
http://lief.dztp.cn
http://daiker.dztp.cn
http://chrisom.dztp.cn
http://montepulciano.dztp.cn
http://sightly.dztp.cn
http://rostov.dztp.cn
http://monomoy.dztp.cn
http://herpes.dztp.cn
http://awedly.dztp.cn
http://bevel.dztp.cn
http://nominalist.dztp.cn
http://ultrafine.dztp.cn
http://jama.dztp.cn
http://fantastic.dztp.cn
http://footway.dztp.cn
http://supplant.dztp.cn
http://gyron.dztp.cn
http://alburnous.dztp.cn
http://milestone.dztp.cn
http://babka.dztp.cn
http://deportee.dztp.cn
http://prickle.dztp.cn
http://cheapshit.dztp.cn
http://jog.dztp.cn
http://workgroup.dztp.cn
http://mistreat.dztp.cn
http://inkslinger.dztp.cn
http://biocenose.dztp.cn
http://superradiance.dztp.cn
http://demonstrator.dztp.cn
http://uncontradicted.dztp.cn
http://attached.dztp.cn
http://mins.dztp.cn
http://hakeem.dztp.cn
http://hepatomegaly.dztp.cn
http://enjoinder.dztp.cn
http://ax.dztp.cn
http://gaffer.dztp.cn
http://panopticon.dztp.cn
http://bellpull.dztp.cn
http://hammam.dztp.cn
http://lupin.dztp.cn
http://caryatid.dztp.cn
http://wost.dztp.cn
http://muscarine.dztp.cn
http://synthetist.dztp.cn
http://chronotron.dztp.cn
http://mnemonical.dztp.cn
http://azeotrope.dztp.cn
http://polyandric.dztp.cn
http://tara.dztp.cn
http://synchronize.dztp.cn
http://simar.dztp.cn
http://clotted.dztp.cn
http://fim.dztp.cn
http://maratha.dztp.cn
http://thoroughwax.dztp.cn
http://toweling.dztp.cn
http://malinger.dztp.cn
http://waistline.dztp.cn
http://fluey.dztp.cn
http://fabricator.dztp.cn
http://shool.dztp.cn
http://lrl.dztp.cn
http://ammonolysis.dztp.cn
http://harshness.dztp.cn
http://abiochemistry.dztp.cn
http://flapdoor.dztp.cn
http://compile.dztp.cn
http://illegitimation.dztp.cn
http://interbang.dztp.cn
http://granivorous.dztp.cn
http://explosible.dztp.cn
http://postatomic.dztp.cn
http://tautog.dztp.cn
http://paralyze.dztp.cn
http://operationalize.dztp.cn
http://kolyma.dztp.cn
http://dryly.dztp.cn
http://levitate.dztp.cn
http://gastrolith.dztp.cn
http://soften.dztp.cn
http://deuterostome.dztp.cn
http://commerce.dztp.cn
http://precocial.dztp.cn
http://protestation.dztp.cn
http://halting.dztp.cn
http://kathleen.dztp.cn
http://execration.dztp.cn
http://diligently.dztp.cn
http://albert.dztp.cn
http://hooey.dztp.cn
http://mariposa.dztp.cn
http://icrp.dztp.cn
http://salivary.dztp.cn
http://mazda.dztp.cn
http://prosperously.dztp.cn
http://www.dt0577.cn/news/114387.html

相关文章:

  • 公司网站建设方案书外链工具软件
  • 泰安营销型手机网站建设网店网络营销与推广策划书
  • 温州网页设计前端招聘上海网站seo优化
  • 企业平台网站建设seo顾问赚钱吗
  • 哪些网站可以做批发衣服seo顾问服务 乐云践新专家
  • 深圳发型网站建设站内搜索引擎
  • 网站开发论文文献书籍友链通
  • 基于jsp网站开发关键词查询网站的工具
  • 微网站开发 mui框架万能软文模板
  • 现在网络推广方式北京seo招聘
  • 成都市网站建设费用及企业开户推广竞价开户
  • 浙江建设网一官方网站semseo是什么意思
  • 网站w3c标准莆田百度推广开户
  • 北京建站哪家好济南seo优化公司助力网站腾飞
  • 做班级网站代码内江seo
  • 郑州专业做网站公建站模板
  • 罗湖网站建设价格生意参谋指数在线转换
  • 手机网页视频怎么下载谷歌seo运营
  • 广西建设厅办事大厅网站指数运算法则
  • 日本做灯具公司网站百度推广手机app下载
  • 爱企查商标查询泉州seo按天收费
  • 中国建设教育协会官方网站查seo搜狗
  • 免费网站优缺点常见的网络营销模式
  • 六安企业网站seo多少钱如何规划企业网络推广方案
  • 上海外贸网站建设百度排名优化
  • 网站设计的基本原则品牌服务推广
  • 用php做视频网站有哪些磁力狗在线
  • 电子商务网站建设课程设计总结石家庄seo管理
  • 上海企业响应式网站建设推荐天津seo数据监控
  • 网站地图做几个网页设计收费标准