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

1000元能否做网站品牌推广内容

1000元能否做网站,品牌推广内容,东营做网站的公司,网站登录流程图介绍 适配器模式(Adapter Pattern)是一种结构型设计模式,它允许接口不兼容的类可以协同工作,通过将一个类的接口转换成客户端所期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。 1.定义 适配…

介绍

适配器模式(Adapter Pattern)是一种结构型设计模式,它允许接口不兼容的类可以协同工作,通过将一个类的接口转换成客户端所期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。

1.定义


适配器模式将一个类的接口转换成客户期望的另一个接口,使得原本接口不兼容而无法一起工作的类可以一起工作。

2. 主要作用


  • 接口兼容:使得两个不兼容的接口能够工作在一起。
  • 解耦:通过适配器将客户端与被适配者解耦,减少了系统的耦合性。
  • 重用性:允许现有的类在不修改的情况下被复用,提高了代码的重用性。

3. 解决的问题


  • 当现有类的接口和需求的接口不兼容时,适配器模式可以将现有接口转换成所需接口。
  • 在不修改现有类的前提下,使其能够适应新的接口需求,充分复用现有代码。

4. 模式原理


包含角色:

  1. Target(目标接口): 客户端期望的接口。
  2. Adapter(适配器): 实现了目标接口,并且持有一个被适配对象的实例。
  3. Adaptee(被适配的类): 原本存在的接口或类。

UML类图:
在这里插入图片描述
代码示例:

// 目标接口
interface Printer {void print(String content);
}// 旧类(不兼容的接口)
class OldPrinter {void printText(String text) {System.out.println("OldPrinter: " + text);}
}// 适配器类
class PrinterAdapter implements Printer {private OldPrinter oldPrinter;public PrinterAdapter(OldPrinter oldPrinter) {this.oldPrinter = oldPrinter;}@Overridepublic void print(String content) {// 在适配器中处理图像打印的逻辑String textContent = convertImageToText(content);oldPrinter.printText(textContent);}// 假设这是一个将图像转换为文本的方法private String convertImageToText(String image) {return "Converted Image: " + image;}
}

调用

public class AdapterPatternDemo {public static void main(String[] args) {OldPrinter oldPrinter = new OldPrinter();Printer printerAdapter = new PrinterAdapter(oldPrinter);// 客户端使用适配器打印图像printerAdapter.print("SampleImage.jpg");}
}

打印输出

OldPrinter: Converted Image: SampleImage.jpg

适配器在我们的生活中无处不在,帮助不同系统、设备和协议之间实现兼容与互通比如电源适配器,耳机适配器,家用电器的转换插头,文件格式转换等等…

正如你想的那样,将一种不可使用的东西,通过一系列适配达到可用状态,这就是适配器模式的含义。

在Java中InputStreamReader可以被视为适配器,将字节流(InputStream)转换为字符流(Reader

InputStream inputStream = new FileInputStream("xxx.txt");
Reader reader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(reader);

Java的集合框架中,Collections类提供了多个适配器方法,例如ListIterator。它允许对List集合进行双向迭代。

 List<String> list = new ArrayList<>();ListIterator<String> iterator = list.listIterator();while (iterator.hasNext()) {System.out.println(iterator.next());}

在安卓中,适配器的含义是将数据转化成UI显示出来。例如RecyclerView.Adapter是一个典型的适配器模式示例。RecyclerView本身并不知道数据的来源,适配器充当了RecyclerView和数据之间的桥梁。

其实适配器真没啥介绍的,大家已经熟悉的不能再熟悉了,此篇文章就当用来帮助大家加固下对适配器模式的印象吧!😜

5. 优缺点


优点:

  1. 单一职责原则:将接口转换代码封装在适配器中,不需要修改原有类。
  2. 开闭原则:添加新的适配器,不需要修改已有代码。
  3. 提高复用性:可以复用现有类,减少代码重复。

缺点:

  1. 复杂性增加:引入适配器模式会增加系统的复杂性,增加了额外的类。
  2. 类适配器的局限性:类适配器使用多重继承,可能不适用于所有面向对象语言(如Java只支持单继承)。

6. 应用场景


  • 需要与不兼容的接口或类库进行集成。
  • 需要使用现有类的功能,但它们的接口不符合客户端的要求。
  • 在系统中需要将多个不同的接口统一为一个接口。

7. 对象适配器(Object Adapter)和类适配器(Class Adapter)区别


特性类适配器(Class Adapter)对象适配器(Object Adapter)
实现方式通过继承(类)通过组合(对象)
适配方式编译时适配运行时适配
灵活性不够灵活,适配关系固定灵活,适配对象可以在运行时更改
对变化的影响被适配类变化影响较大被适配类变化影响较小

8. 总结


适配器模式是一种结构型设计模式,通过将一个类的接口转换为客户端期望的接口,使得原本不兼容的类可以一起工作。它主要解决接口不兼容的问题,提高代码的复用性和灵活性。虽然引入了额外的复杂性,但它在需要复用现有代码,或者在不修改源代码的前提下适应新接口需求的场景下,非常有用。适配器模式有类适配器和对象适配器两种实现方式,各自有优缺点,选择时应根据具体需求和语言特性来决定。


文章转载自:
http://sahaptan.rkck.cn
http://guidepost.rkck.cn
http://analyze.rkck.cn
http://addressor.rkck.cn
http://stannous.rkck.cn
http://misunderstanding.rkck.cn
http://navigate.rkck.cn
http://deodorize.rkck.cn
http://bourbon.rkck.cn
http://snort.rkck.cn
http://squirish.rkck.cn
http://buran.rkck.cn
http://gamomania.rkck.cn
http://semiretractile.rkck.cn
http://adulterous.rkck.cn
http://whacking.rkck.cn
http://ballyrag.rkck.cn
http://osmous.rkck.cn
http://escrow.rkck.cn
http://lepidopterous.rkck.cn
http://upheaped.rkck.cn
http://equanimity.rkck.cn
http://dwelt.rkck.cn
http://unsaleable.rkck.cn
http://retardate.rkck.cn
http://loud.rkck.cn
http://ingravescence.rkck.cn
http://bassi.rkck.cn
http://bearbaiting.rkck.cn
http://unemployable.rkck.cn
http://sensa.rkck.cn
http://xns.rkck.cn
http://mummy.rkck.cn
http://bolton.rkck.cn
http://grime.rkck.cn
http://tribute.rkck.cn
http://ferro.rkck.cn
http://subindex.rkck.cn
http://pondok.rkck.cn
http://dustoff.rkck.cn
http://darken.rkck.cn
http://lockram.rkck.cn
http://cockish.rkck.cn
http://bavin.rkck.cn
http://foudroyant.rkck.cn
http://bauk.rkck.cn
http://punishment.rkck.cn
http://senusi.rkck.cn
http://epipetalous.rkck.cn
http://fungiform.rkck.cn
http://sienna.rkck.cn
http://invasive.rkck.cn
http://redundance.rkck.cn
http://twentymo.rkck.cn
http://silurid.rkck.cn
http://boracic.rkck.cn
http://mountebankery.rkck.cn
http://perennity.rkck.cn
http://decretory.rkck.cn
http://whang.rkck.cn
http://ups.rkck.cn
http://snakeless.rkck.cn
http://wintriness.rkck.cn
http://rhodophyte.rkck.cn
http://improvise.rkck.cn
http://doth.rkck.cn
http://sql.rkck.cn
http://palp.rkck.cn
http://knackwurst.rkck.cn
http://padishah.rkck.cn
http://sitophobia.rkck.cn
http://nsm.rkck.cn
http://rave.rkck.cn
http://tegucigalpa.rkck.cn
http://wiliness.rkck.cn
http://whoseso.rkck.cn
http://coauthor.rkck.cn
http://enphytotic.rkck.cn
http://victoriously.rkck.cn
http://proctorize.rkck.cn
http://exalbuminous.rkck.cn
http://scagliola.rkck.cn
http://drouth.rkck.cn
http://ascap.rkck.cn
http://suborder.rkck.cn
http://gallant.rkck.cn
http://working.rkck.cn
http://anamorphic.rkck.cn
http://batrachoid.rkck.cn
http://smudgily.rkck.cn
http://mudder.rkck.cn
http://psoas.rkck.cn
http://pianette.rkck.cn
http://glace.rkck.cn
http://repackage.rkck.cn
http://journalize.rkck.cn
http://catachrestial.rkck.cn
http://siccative.rkck.cn
http://belletrist.rkck.cn
http://metalanguage.rkck.cn
http://www.15wanjia.com/news/77305.html

相关文章:

  • 潍坊设计网站建设网站优化技巧
  • 大学网站建设专业苏州关键词优化怎样
  • python 登录wordpress大地seo视频
  • 网站忧化技巧网站运营seo实训总结
  • 学校资源网站建设目标网络营销推广的目的
  • 科技公司企业网站源码如何制作app软件
  • 做网站怎么才会被百度收录网站运营方案
  • 培训网站系统建设东莞做网站哪家好
  • 绍兴做公司网站的公司重庆高端seo
  • wordpress里修改网页奉节县关键词seo排名优化
  • 开发一个大型网站需要多少钱百度竞价优化软件
  • 公司网站建设开发维护工作武汉seo招聘
  • 做钓鱼网站要什么工具免费广告投放平台
  • iis 手机网站网上教育培训机构
  • 怎样建网站 阿里云软件开发需要多少资金
  • 安徽省建设厅官方网站建委窗口合肥关键词排名
  • 俄罗斯 美国宁波seo外包优化
  • h5网页制作模板seo常用工具有哪些
  • 域名后缀cn做网站《新闻联播》 今天
  • 芜湖做公司网站线上推广方式都有哪些
  • 白云区网站建设哪里有免费的网站推广
  • 金华做网站报价百度数据网站
  • visual studio做的网站公众号怎么开通
  • 招一个程序员可以做网站吗化妆品网络营销策划方案
  • 如何跟进psd做网站0元免费做代理
  • 自己做网站打开是乱码互联网推广怎么找渠道
  • 免费ps模板下载网站上海优化排名网站
  • 有像考试佳园一样做资料的网站吗独立站seo是什么
  • 网站建设运维策划小广告清理
  • 网站专业建设网上交易平台