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

学网站开发月薪多少钱上海闵行区房价

学网站开发月薪多少钱,上海闵行区房价,网站关键词优化到首页难度,通过模板做网站文章目录 1. 概念1.1 角色1.2 应用场景1.2 类图 2. 代码示例2.1 设计2.2 代码2.3 示例类图 1. 概念 定义一个适配器#xff0c;帮助原本不能实现接口的类“实现”该接口 1.1 角色 目标#xff08;Target#xff09;#xff1a;客户端调用的目标接口 被适配者#xff08… 文章目录 1. 概念1.1 角色1.2 应用场景1.2 类图 2. 代码示例2.1 设计2.2 代码2.3 示例类图 1. 概念 定义一个适配器帮助原本不能实现接口的类“实现”该接口 1.1 角色 目标Target客户端调用的目标接口 被适配者Adaptee已经存在且运行良好的类或对象但它不能实现Taget接口。 适配器Adapter继承或管理被适配者且可以实现目标接口。 1.2 应用场景 背景 已经有一个目标接口供客户端调用根据需求新增一个类该类不能实现目标接口修改目标接口开销会很大 解决方法 我们新增一个类——适配器适配器继承新增类且可以实现目标接口 结果 客户端用适配器处理新增类的实例得到的实例可以实现目标接口。 1.2 类图 #mermaid-svg-BHF9sKSa7JyogYyB {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-BHF9sKSa7JyogYyB .error-icon{fill:#552222;}#mermaid-svg-BHF9sKSa7JyogYyB .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-BHF9sKSa7JyogYyB .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-BHF9sKSa7JyogYyB .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-BHF9sKSa7JyogYyB .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-BHF9sKSa7JyogYyB .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-BHF9sKSa7JyogYyB .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-BHF9sKSa7JyogYyB .marker{fill:#333333;stroke:#333333;}#mermaid-svg-BHF9sKSa7JyogYyB .marker.cross{stroke:#333333;}#mermaid-svg-BHF9sKSa7JyogYyB svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-BHF9sKSa7JyogYyB g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#mermaid-svg-BHF9sKSa7JyogYyB g.classGroup text .title{font-weight:bolder;}#mermaid-svg-BHF9sKSa7JyogYyB .nodeLabel,#mermaid-svg-BHF9sKSa7JyogYyB .edgeLabel{color:#131300;}#mermaid-svg-BHF9sKSa7JyogYyB .edgeLabel .label rect{fill:#ECECFF;}#mermaid-svg-BHF9sKSa7JyogYyB .label text{fill:#131300;}#mermaid-svg-BHF9sKSa7JyogYyB .edgeLabel .label span{background:#ECECFF;}#mermaid-svg-BHF9sKSa7JyogYyB .classTitle{font-weight:bolder;}#mermaid-svg-BHF9sKSa7JyogYyB .node rect,#mermaid-svg-BHF9sKSa7JyogYyB .node circle,#mermaid-svg-BHF9sKSa7JyogYyB .node ellipse,#mermaid-svg-BHF9sKSa7JyogYyB .node polygon,#mermaid-svg-BHF9sKSa7JyogYyB .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-BHF9sKSa7JyogYyB .divider{stroke:#9370DB;stroke:1;}#mermaid-svg-BHF9sKSa7JyogYyB g.clickable{cursor:pointer;}#mermaid-svg-BHF9sKSa7JyogYyB g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#mermaid-svg-BHF9sKSa7JyogYyB g.classGroup line{stroke:#9370DB;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#mermaid-svg-BHF9sKSa7JyogYyB .classLabel .label{fill:#9370DB;font-size:10px;}#mermaid-svg-BHF9sKSa7JyogYyB .relation{stroke:#333333;stroke-width:1;fill:none;}#mermaid-svg-BHF9sKSa7JyogYyB .dashed-line{stroke-dasharray:3;}#mermaid-svg-BHF9sKSa7JyogYyB #compositionStart,#mermaid-svg-BHF9sKSa7JyogYyB .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #compositionEnd,#mermaid-svg-BHF9sKSa7JyogYyB .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #dependencyStart,#mermaid-svg-BHF9sKSa7JyogYyB .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #dependencyStart,#mermaid-svg-BHF9sKSa7JyogYyB .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #extensionStart,#mermaid-svg-BHF9sKSa7JyogYyB .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #extensionEnd,#mermaid-svg-BHF9sKSa7JyogYyB .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #aggregationStart,#mermaid-svg-BHF9sKSa7JyogYyB .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB #aggregationEnd,#mermaid-svg-BHF9sKSa7JyogYyB .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-BHF9sKSa7JyogYyB .edgeTerminals{font-size:11px;}#mermaid-svg-BHF9sKSa7JyogYyB :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} «interface» Target Service() Class Service() Adapter *Adaptee:Adaptee Service() Adaptee AnotherService() Client 2. 代码示例 2.1 设计 背景 client通过Bird接口可以获取鸟类实例的信息有一个Cat类不能实现Bird接口但是需要client调用Bird接口来获取Cat实例的信息 解决 创建一个适配器CatAdapter 它继承Cat类且实现Bird接口 2.2 代码 package mainimport fmt //之前有一个Bird接口他可以Get鸟类的信息 type Bird interface {Get() }//比如这个鹦鹉类实现了Bird接口 type Parrot struct {Name stringFeather string }func (parrot *Parrot) Get() {fmt.Printf(鹦鹉%q的颜色是%q\n, parrot.Name, parrot.Feather) }//业务需求多了一个猫的类 type Cat struct {Name stringFur string } //它只有Show方法不能实现Bird接口 func (cat *Cat) Show() {fmt.Printf(猫咪%q的颜色是%q\n, cat.Name, cat.Fur) }//我们创建一个猫的解释器他继承了猫类同时又可以实现Bird接口 type CatAdapter struct {Cat *Cat }func (catAdapter *CatAdapter) Get() {catAdapter.Cat.Show() }//有一个客户端 type Client struct { } //它可以直接获取bird信息 func (client Client) GetBird(bird Bird) {bird.Get() }func main() {//实例化一个叫polly的鹦鹉polly : Parrot{Name: polly,Feather: green,}//示例话一个叫tom的猫tom : Cat{Name: tom,Fur: black,}client : Client{}//客户端可以直接使用pollyclient.GetBird(polly)//客户端可以通过解释器使用tomtomAdapter : CatAdapter{Cat: tom}client.GetBird(tomAdapter) }2.3 示例类图 #mermaid-svg-NhIKHI3dEECuujIH {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-NhIKHI3dEECuujIH .error-icon{fill:#552222;}#mermaid-svg-NhIKHI3dEECuujIH .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-NhIKHI3dEECuujIH .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-NhIKHI3dEECuujIH .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-NhIKHI3dEECuujIH .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-NhIKHI3dEECuujIH .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-NhIKHI3dEECuujIH .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-NhIKHI3dEECuujIH .marker{fill:#333333;stroke:#333333;}#mermaid-svg-NhIKHI3dEECuujIH .marker.cross{stroke:#333333;}#mermaid-svg-NhIKHI3dEECuujIH svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-NhIKHI3dEECuujIH g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#mermaid-svg-NhIKHI3dEECuujIH g.classGroup text .title{font-weight:bolder;}#mermaid-svg-NhIKHI3dEECuujIH .nodeLabel,#mermaid-svg-NhIKHI3dEECuujIH .edgeLabel{color:#131300;}#mermaid-svg-NhIKHI3dEECuujIH .edgeLabel .label rect{fill:#ECECFF;}#mermaid-svg-NhIKHI3dEECuujIH .label text{fill:#131300;}#mermaid-svg-NhIKHI3dEECuujIH .edgeLabel .label span{background:#ECECFF;}#mermaid-svg-NhIKHI3dEECuujIH .classTitle{font-weight:bolder;}#mermaid-svg-NhIKHI3dEECuujIH .node rect,#mermaid-svg-NhIKHI3dEECuujIH .node circle,#mermaid-svg-NhIKHI3dEECuujIH .node ellipse,#mermaid-svg-NhIKHI3dEECuujIH .node polygon,#mermaid-svg-NhIKHI3dEECuujIH .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-NhIKHI3dEECuujIH .divider{stroke:#9370DB;stroke:1;}#mermaid-svg-NhIKHI3dEECuujIH g.clickable{cursor:pointer;}#mermaid-svg-NhIKHI3dEECuujIH g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#mermaid-svg-NhIKHI3dEECuujIH g.classGroup line{stroke:#9370DB;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#mermaid-svg-NhIKHI3dEECuujIH .classLabel .label{fill:#9370DB;font-size:10px;}#mermaid-svg-NhIKHI3dEECuujIH .relation{stroke:#333333;stroke-width:1;fill:none;}#mermaid-svg-NhIKHI3dEECuujIH .dashed-line{stroke-dasharray:3;}#mermaid-svg-NhIKHI3dEECuujIH #compositionStart,#mermaid-svg-NhIKHI3dEECuujIH .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #compositionEnd,#mermaid-svg-NhIKHI3dEECuujIH .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #dependencyStart,#mermaid-svg-NhIKHI3dEECuujIH .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #dependencyStart,#mermaid-svg-NhIKHI3dEECuujIH .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #extensionStart,#mermaid-svg-NhIKHI3dEECuujIH .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #extensionEnd,#mermaid-svg-NhIKHI3dEECuujIH .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #aggregationStart,#mermaid-svg-NhIKHI3dEECuujIH .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH #aggregationEnd,#mermaid-svg-NhIKHI3dEECuujIH .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-NhIKHI3dEECuujIH .edgeTerminals{font-size:11px;}#mermaid-svg-NhIKHI3dEECuujIH :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} «interface» Bird Get() Parrot String:Name String:Feather CatAdapter *Cat:Cat Get() Cat String:Name String:Fur Show() Client GetBird(bird Bird)
http://www.huolong8.cn/news/353229/

相关文章:

  • 网站等保需要几年一做什么网站做烘干设备好
  • 南昌营销型网站建设企业建站公司案例
  • 义乌网站制作公司电子商务公司建设网站方案
  • 做网站创业怎么样电子商务网站开发教程论文6
  • 淄博外贸网站建设海丰建设局网站
  • 网站建设信息模板下载wordpress怎么添加用户中心页面
  • 手机网站哪些功能wordpress更改固定连接404
  • 连云港网站建设的公司网站建设功
  • 北京网站优化诊断网上商城怎么购物
  • 网站建设 淄博网络推广优化培训
  • 微信如何建公众号怎么创建乐云seo官网
  • 百度免费网站制作千峰培训多少钱
  • 做网站建设哪家效益快免费项目管理软件app
  • 新网站网页收录百度竞价排名案例分析
  • 图文店做网站有用处吗由wordpress自豪地提供
  • dz论坛做视频网站教程高端网站设计企业网站建设
  • 做一家网站需要多少钱做设计的公司的网站
  • 江西东乡网站建设单页网站设计制作
  • 商城网站建设清单手机网页及网站设计
  • 哪个建设网站检察院门户网站建设工作成效
  • 用什么程序做网站最好优化广州网站建设网络
  • 嘉兴公司网站制作一人有限公司怎么注册
  • 电商网站模板引擎什么做网站统计好
  • 网站营销案例网站建设打不开
  • 上海模板建站软件手机网站 asp
  • 加强门户网站建设与管理办法上传了源程序提示网站建设中
  • 网站开发程序员自学中国比较有名的外贸公司
  • 建设网站为什么要虚拟主机新浪做网站
  • 网站备案帐号找回可以做推广的网站
  • 广州网站开发广州亦客网络wordpress站点后台