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

宜昌最权威网站建设公司房地产网页设计

宜昌最权威网站建设公司,房地产网页设计,直播营销的优势有哪些,做建筑材料哪个网站好一点是什么#xff1f; 我们平时的有线耳机接口分为USB的和Type-C的接口#xff0c;但是手机的耳机插口却只有一个#xff0c;像华为的耳机插口现在基本都是Type-c的#xff0c;那如果我们现在只有USB接口的耳机怎么办呢#xff0c;这个时候就需要使用到一个转换器#xff0c…是什么 我们平时的有线耳机接口分为USB的和Type-C的接口但是手机的耳机插口却只有一个像华为的耳机插口现在基本都是Type-c的那如果我们现在只有USB接口的耳机怎么办呢这个时候就需要使用到一个转换器这个转换器是USB接口的插入USB插口中然后它的背面可供Type-C的接口插入最终实现一个转换效果这其实就是使用到了适配器模式 因此适配器模式就是将一个类的接口转换成客户希望的另外一个接口使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 适配器模式分为类适配器模式和对象适配器模式前者类之间的耦合度比后者高且要求程序员了解现有组件库中的相关组件的内部结构所以应用相对较少些 结构 目标接口当前系统业务所期待的接口它可以是抽象类或接口 适配者类它是被访问和适配的现存组件库中的组件接口 适配器类它是一个转换器通过继承或引用适配者的对象把适配者接口转换成目标接口让客户按目标接口的格式访问适配者 实现 类适配器 实现方式定义一个适配器类来实现当前系统的业务接口同时又继承现有组件库中已经存在的组件 目标接口 public interface USB {//目标接口void connectByUsb(); } public class IUSBImpl implements USB{Overridepublic void connectByUsb() {System.out.println(连接USB接口);} } 适配者类 //适配器 public class Adapter extends ITypeCImpl implements USB{Overridepublic void connectByUsb() {System.out.println(使用适配器);connectByTypeC();} } 适配器类 //适配器 public class Adapter extends ITypeCImpl implements USB{Overridepublic void connectByUsb() {System.out.println(使用适配器);connectByTypeC();} } 使用 public class Phone {public void connectHeadset(USB usb){usb.connectByUsb();} } public class Consumer {public static void main(String[] args) {Phone phone new Phone();Adapter adapter new Adapter();IUSBImpl usb new IUSBImpl();phone.connectHeadset(usb);System.out.println();phone.connectHeadset(adapter);} } 我们可以这样理解我们原来使用USB接口直接连接手机的USB接口而现在我们手里的耳机是TypeC接口因此是不能直接连接手机接口的我们只能连接转换器适配器然后让转换器帮我们转换然后去连接手机的USB接口 缺点 类适配器模式违背了合成复用原则类适配器是客户类有一个接口规范的情况下可用反之则不可用也就是说如果我们的适配器是实现了USB接口规范的但如果它本身没有这个接口规范而只有单单一个类的情况下就没办法使用了继承只能单继承 对象适配器 实现方式对象适配器模式可采用将现有组件库中已经实现的组件引入适配器类中该类同时实现当前系统的业务接口 目标接口 public interface USB {//目标接口或目标对象void connectByUsb(); } public class IUSBImpl implements USB {Overridepublic void connectByUsb() {System.out.println(连接USB接口);} }适配者类 public interface TypeC {//适配者void connectByTypeC (); } public class ITypeCImpl implements TypeC {Overridepublic void connectByTypeC() {System.out.println(使用Type-C接口连接);} } 适配器类 //适配器 public class Adapter extends IUSBImpl {//聚合适配者类private TypeC typeC;public Adapter(TypeC typeC) {this.typeC typeC;}Overridepublic void connectByUsb() {System.out.println(适配器连接USB接口);typeC.connectByTypeC();} } 使用 public class Phone {public void connectHeadset(USB usb){usb.connectByUsb();} } public class Consumer {public static void main(String[] args) {Phone phone new Phone();IUSBImpl usb new IUSBImpl();//直接使用USB连接phone.connectHeadset(usb);System.out.println();ITypeCImpl typeC new ITypeCImpl();Adapter adapter new Adapter(typeC);//通过适配器连接phone.connectHeadset(adapter);} }简单来说我们在适配器中没有直接去继承适配者的实现类而是聚合了适配者类这样的话无论我们的目标对象不管是类还是接口都可以完美实现了且符合合成复用原则 注意还有一个适配器模式是接口适配器模式当不希望实现一个接口中所有方法的时候可以创建一个抽象类Adapter实现所有方法而此时我们只需要继承该抽象类即可比较简单就不再过多赘述 使用场景 1.以前开发的系统存在满足新系统功能需求的类但其接口同新系统的接口不一致 2.使用第三方提供的组件但组件接口定义和自己要求的接口定义不同
http://www.hkea.cn/news/14415506/

相关文章:

  • 在越南做一个网站怎么做平面设计培训哪个好
  • 帮人家做网站难吗金融企业类网站模板免费下载
  • 艺术品展览公司网站建设网站建设销售
  • wordpress调用最近文章东莞网络优化公司排名
  • 崇州网站制作重庆网站推广策划方案
  • 犀牛云做网站编辑上传产品设计毕业生工资一般多少
  • 网页建站价格政务公开 加强门户网站建设
  • 永久免费ppt下载网站wordpress静态化好处
  • 购买一个网站需要多少钱网站忧化技巧
  • 网站开发挣钱吗wordpress不转义
  • 建设部网站质量终身责任承诺书智慧树网站的章节题做不了
  • 更换网站服务器网站建设的语言与工具
  • 移动网站做微信小程序wordpress底部版权插件
  • wordpress79元主题网站优化每天更新得是首页更新吗
  • 建设网站需要从哪方面考虑网站建设制度都有哪些
  • 青岛网站建设优化vs能建设网站吗
  • apache做网站公司网站怎么做优化
  • 进一步加强区门户网站建设管理百度推广文案
  • 门户网站功能清单小语种网站
  • 网站开发工作招聘wordpress 输出the id
  • 甘肃省城乡住房建设厅网站首页海南省住房公积金管理局app
  • 深圳vi设计手册合肥seo
  • 微擎pc网站开发免费看网站源码
  • 网站备案信息下载个人社保缴费比例
  • 贡嘎网站建设抖音开放平台官网入口
  • 互联网行业网站模板凤岗镇网站建设公司
  • 重庆航运建设发展有限公司网站免费ppt模板简约
  • asp.net网站在哪个网站可以做外单衣服
  • 做仪表宣传哪个网站好阿里建站系统
  • 做网站 你的出路在哪里教务系统网站怎么做