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

英文网站建设优化东营工程信息网

英文网站建设优化,东营工程信息网,网站做ppt模板下载,wordpress的restapi使用适配器模式使用两个或是多个不兼容的接口兼容。在不修改不兼容代码的情况下使用适配器模式实现接口一致性。通过Adapter 类实现。 例子: 一个俱乐部类Club,艺术加被请到俱乐部在表演节目: organize_performance()…

使用适配器模式使用两个或是多个不兼容的接口兼容。在不修改不兼容代码的情况下使用适配器模式实现接口一致性。通过Adapter 类实现。

例子: 一个俱乐部类Club,艺术加被请到俱乐部在表演节目: organize_performance()

Musician类 play()  方法  Dancer 类主要是dance() 方法执行  (external.py) 

外部模块导入(adapter.py)创建一个通用的  Adapter类调整不兼容的对象。

 __init__() 方法的obj 参数是需要修改的对象,adapted_methods 是一个字典,包含与客户端调用的方法和应该调用方法匹配的键值对。

chapter04/external.py

class Musician: def __init__(self, name): self.name = namedef __str__(self): return f'the musician {self.name}' def play(self): return 'plays music' class Dancer: def __init__(self, name): self.name = name def __str__(self): return f'the dancer {self.name}' def dance(self): return 'does a dance performance' 

chapter04/adapter.py

from external import Musician, Dancerclass Club: def __init__(self, name): self.name = name def __str__(self): return f'the club {self.name}' def organize_event(self): return 'hires an artist to perform for the people' class Adapter: def __init__(self, obj, adapted_methods): self.obj = obj self.__dict__.update(adapted_methods) def __str__(self): return str(self.obj) def main(): objects = [Club('Jazz Cafe'), Musician('Roy Ayers'), Dancer('Shane Sparks')]for obj in objects:if hasattr(obj, 'play') or hasattr(obj, 'dance'):if hasattr(obj, 'play'):adapted_methods = dict(organize_event=obj.play)   # 设置调用方法统一organize_eventelif hasattr(obj, 'dance'):            adapted_methods = dict(organize_event=obj.dance)    # 设置调用方法统一organize_event# referencing the adapted object hereobj = Adapter(obj, adapted_methods)print(f' 输出 {obj} {obj.organize_event()}')  # 调用统一方法if __name__ == "__main__": main()

 输出 the club Jazz Cafe hires an artist to perform for the people
 输出 the musician Roy Ayers plays music
 输出 the dancer Shane Sparks does a dance performance

http://www.yayakq.cn/news/391373/

相关文章:

  • 下载公众号seo都用在哪些网站
  • 基于php网站开发的参考文献海南网站建设基本流程
  • 音乐网站建设策划书杭州动漫设计公司最新招聘
  • 网站百度排名查询在拼多多开网店的流程
  • 免费建立一个网站怎么提高网站曝光
  • 网站分析 工具长尾关键词是什么
  • 网站设计研究方法北京设计网站建设
  • 可以做内容的网站wordpress短链接关键字
  • 网站域名注册时间查询无锡网站建设xinysu
  • 英文公司网站制作网站建设定做
  • ppt模板免费下载的网站世界建筑设计网站
  • 网页游戏网站手机分销商城开发
  • 资讯网站排版网站开发需求文件
  • 做网站可以用思源字体吗怎么接游戏推广的业务
  • 自己做网站除了域名还需要什么一个网站怎么做软件下载
  • 代加工接订单网站昆明做网站公
  • 建站宝盒哪个牌子好学做网站好就业吗
  • 河南平台网站建设价位聊城做网站推广
  • 网站开发的进度控制计划表公司网站建设意见和建议
  • iis禁止通过ip访问网站个人网站做哪一种比较赚钱
  • 广州网站下载安装英文seo外链
  • 自贡建设局网站首页有动效的网站
  • 大连网站建设介绍2017年网站外链怎么做
  • seo网站怎么搭建网站的规划与建设课程设计
  • 网站策划书的撰写流程有专业做网站优化的吗
  • 济宁百度网站建设用ai做网站
  • 网站的设计过程餐饮公司做网站好处
  • 做网站跟做APP哪个容易沃尔玛的网站建设
  • 可以上传图片的网站怎么做公司网站建设方案拓扑图
  • 做的网站放在阿里云地图怎么认证地址