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

深圳专业网站设计公司哪家好网络营销题库及答案2020

深圳专业网站设计公司哪家好,网络营销题库及答案2020,会员登录管理系统,wordpress登录 美化适配器模式#xff08;Adapter Pattern#xff09;是一种结构型设计模式#xff0c;它允许不兼容的接口之间进行合作。适配器模式通过创建一个适配器类来转换一个接口的接口#xff0c;使得原本由于接口不兼容无法一起工作的类可以一起工作。 主要组成部分#xff1a; 目标…适配器模式Adapter Pattern是一种结构型设计模式它允许不兼容的接口之间进行合作。适配器模式通过创建一个适配器类来转换一个接口的接口使得原本由于接口不兼容无法一起工作的类可以一起工作。 主要组成部分 目标接口Target Interface 客户端所期望的接口。 适配器Adapter 实现目标接口并持有一个具体目标对象的引用将请求委托给该对象。 不兼容的接口Adaptee 现有代码中的一个接口它是客户端想要使用的但是不兼容。 客户端Client 需要使用目标接口的代码。 优点 灵活性可以在不改变现有代码的情况下替换或扩展接口。增加可重用性使得不兼容的接口可以通过适配器进行重用。解耦客户端与不兼容的接口解耦使代码更清晰。 使用场景 当你要使用的类存在不兼容的接口时。当你希望使用一些已有的子类而它们的接口与您需要的接口不同时。当你想要创建一个可以与多个不同的接口协同工作的类。 JAVA: 如何将不同类型的电器接口适配到统一的插头接口。 // 1、目标接口 - 电器接口 public interface ElectricSocket {void plugIn(); } //2、具体目标-美国电器 public class AmericanDevice {public void connect() {System.out.println(连接到美国插座!);} }// 具体目标-欧美电器 public class EuropeanDevice {public void plug() {System.out.println(链接到欧美到插座);} }// 适配器1-美国电器适配器 public class AmericanDeviceAdapter implements ElectricSocket{private AmericanDevice device;public AmericanDeviceAdapter(AmericanDevice device){this.device device;}Overridepublic void plugIn() {device.connect();} } // 适配器2-欧美适配器 public class EuropeanDeviceAdapter implements ElectricSocket{private EuropeanDevice device;public EuropeanDeviceAdapter(EuropeanDevice device){this.device device;}Overridepublic void plugIn() {device.plug();} }Test(description 适配器模式)public void adapterTest(){//创建一个美国电器AmericanDevice device new AmericanDevice();ElectricSocket socket new AmericanDeviceAdapter(device);socket.plugIn();//创建一个欧美电器EuropeanDevice device1 new EuropeanDevice();ElectricSocket socket1 new EuropeanDeviceAdapter(device1);socket1.plugIn();} GO:  假设我现在有一个运维系统需要分别调用阿里云和 AWS 的 SDK 创建主机两个 SDK 提供的创建主机的接口不一致此时就可以通过适配器模式将两个接口统一。 PSAWS 和 阿里云的接口纯属虚构没有直接用原始的 SDK只是举个例子 package adapterimport fmt// ICreateServer 创建云主机 type ICreateServer interface {CreateServer(cpu, mem float64) error }// AWSClient aws sdk type AWSClient struct{}// RunInstance 启动实例 func (c *AWSClient) RunInstance(cpu, mem float64) error {fmt.Printf(aws client run success, cpu %f, mem: %f, cpu, mem)return nil }// AwsClientAdapter 适配器 type AwsClientAdapter struct {Client AWSClient }// CreateServer 启动实例 func (a *AwsClientAdapter) CreateServer(cpu, mem float64) error {err : a.Client.RunInstance(cpu, mem)if err ! nil {return err}return nil }// AliyunClient aliyun sdk type AliyunClient struct{}// CreateServer 启动实例 func (c *AliyunClient) CreateServer(cpu, mem int) error {fmt.Printf(aws client run success, cpu %d, mem: %d, cpu, mem)return nil } // AliyunClientAdapter 适配器 type AliyunClientAdapter struct {Client AliyunClient }// CreateServer 启动实例 func (a *AliyunClientAdapter) CreateServer(cpu, mem float64) error {err : a.Client.CreateServer(int(cpu), int(mem))if err ! nil {return err}return nil } package adapterimport testingfunc TestAdapter(t *testing.T) {// 确保 adapter 实现了目标接口var a ICreateServer AliyunClientAdapter{Client: AliyunClient{},}err : a.CreateServer(1.0, 2.0)if err ! nil {return}var w ICreateServer AwsClientAdapter{Client: AWSClient{},}err w.CreateServer(2.0, 3.0)if err ! nil {return} }
http://www.hkea.cn/news/14523280/

相关文章:

  • 中美网站建设差异房产网南京
  • 微网站建设方向重庆做网站及优化报价
  • 自己做的网站怎么放图片酒仙网技术开发与网站建设方面
  • wordpress新闻站主题地方门户网站源码下载
  • 新吴区网站建设wordpress搬家_后台错乱
  • 快递网站推广怎么做网站模版配置数据库
  • 如何给网站划分栏目网站设计用什么字体
  • 网站如何做监控直播重庆在线官网
  • 为什么网站上传都上传不成功企业服务总线
  • 最超值的赣州网站建设建一个网站的步骤
  • 国内外优秀建筑设计网站我想学制作网站吗
  • 百度云做.net网站做宠物的网站
  • 顺义顺德网站建设站内营销推广方式有哪些
  • 网站建设影音先锋网址推广型网站开发网址
  • 网站开发界面图标设计自己可以做英文网站么
  • 做公司网站的服务费入什么费用旺道seo
  • 写作网站水平哪个最好龙元建设陕西公司网站
  • 简洁网站布局学生可做的网站主题
  • php 企业网站框架品牌建设成效有待提升
  • 怎么做传奇网站图北京鑫旺路桥建设有限公司网站
  • discuz怎么做网站地图广州网站设计公司推荐哪家
  • 中远智达网站建设wordpress卸载多说
  • 自媒体网站程序wordpress怎么修改密码
  • 网站源码模块平台网站怎么推广
  • 速成建站招聘网站上还要另外做简历吗
  • 织梦网站后台一键更新没反应大学计算机网页设计教程
  • wordpress 添加文章归档上海哪学网站建设优化
  • 做平面的公司网站优惠券小程序源码
  • 找人做网站如何担保家里装修
  • 宁波方正建设监理网站济南城乡建设局