● 适配器(adapter)

In computing, adapter is a hardware device or software component that converts transmitted data from one presentation form to another. The data presentation can be, for example, a message sent between objects in an application or a packet sent through a network.

适配器就是一个接口转换器,它可以是一个独立的硬件接口设备(如独立显卡, 即显示适配器),允许硬件或电子接口(如主板的显示接口)与其它硬件或电子接口(如显示器接口)相连,也可以是信息接口。比如:电源适配器、三角架基座转接部件、USB与串口的转接设备等。

适配器: 通俗一点说就是一种起中间连接作用的配件,使用这种配件的作用在于简化主机的硬件设计,增加主机的通用性和灵活性。

例如:显示卡是使用的最多的适配器了,由于我们能见到的显示器种类太多,他们的分辨率和刷新频率都会有差别,如果让主板上的显示输出口为各种类型的显示器准备好不同的输出信号,那恐怕这块电路板就要比主板还要大了,而且这块主板一生最多也就能配几个类型的显示器使用,多余的就浪费了,于是人们达成共识:主板只提供显示接口搜索,具体的显示类型单独做一块显示卡,形成主板的显示接口-显示卡(即显示适配器)-显示器这样一个硬件连接形式,这样既节省主板的电路,又可以根据需要通过更换显示卡来适应显示器的需要。

常用的适配器还有电源适配器、网卡适配器、网络适配器、打印适配器...等等。

One that adapts, such as a device used to effect operative compatibility between different parts of one or more pieces of apparatus.

适应物,如用于在一件或多件仪器的不同部件之间实现有效兼容性的装置

Android中的Adapter:

Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:

● 接口(interface)

In computing, an interface is a shared boundary across which two separate components of a computer system exchange information. The exchange can be between software, computer hardware, peripheral devices, humans and combinations of these. Some computer hardware devices such as a touchscreen can both send and receive data through the interface, while others such as a mouse, microphone or joystick are one way only.

三种接口:

人类与电脑等信息机器或人类与程序之间的接口称为用户界面。

电脑等信息机器硬件组件间的接口叫硬件接口。

电脑等信息机器软件组件间的接口叫软件接口。

VGA接口,又叫D-SUB接口。它传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。当受到干扰时,显示器可能会出现水波纹状显示。

VGA已经比较老了,虽然现在的台式电脑上仍然保留,但一些显卡、超薄笔记本已经不具备。

为什么Java要把一个只包含抽象方法的类称为接口?

可以这样想象?

接口的设置是为了提供便利, 例如, 插座的插孔也是一种接口, 它就为人们使用电器提供了便利, 比起自己把插头和几根电线接起来, 直接把插头插进插孔要更便利并且更安全.

拿怎么实现这个接口呢? 用一个电器实现呗.

笔记本电脑只需接一个插孔(一个类可实现一个接口)

台式电脑需要多个插孔(一个类也可实现多个接口)

理解什么是适配器(adapter)和接口(interface)的更多相关文章

  1. Objective-C设计模式——适配器Adapter(接口适配)

    适配器模式 适配器模式通俗来讲,其实就是对客户端添加新的类但却不修改客户端和新的类的接口.此时我们需要自己来实现适配,在适配器模式中有Target对象,即客户端所需要的接口对象,Adaptee对象,即 ...

  2. 【原】模式之-适配器Adapter模式

    适配器Adapter模式 适配器模式(Adapter Pattern)把一个类的接口变换成客户端所期待的的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作. 模式所涉及的角色有 ...

  3. 架构设计之设计模式 (一) 适配器(Adapter)---提高复用性

    简介 简介是为了描述一下该模式是干嘛用的,为了让不了解该模式的人看了之后也有一些新的认识. 本文章分为两部分,第一部分主要介绍适配器模式:第二部分介绍该模式与相近模式的异同. 下午一直在讨论设计模式, ...

  4. 设计模式学习心得<适配器 Adapter>

    适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁.这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能. 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接 ...

  5. Java读源代码学设计模式:适配器Adapter

    适配器模式相关源代码:slf4j-1.6.1.hibernate-3.6.7 大家都知道.log4j是一个广泛使用的日志工具,除此之外.sun公司在JDK中也有自己的日志工具,也就是java.util ...

  6. Java 实现适配器(Adapter)模式

    平时我们会常常碰到这种情况,有了两个现成的类,它们之间没有什么联系.可是我们如今既想用当中一个类的方法.同一时候也想用另外一个类的方法.有一个解决方法是.改动它们各自的接口.可是这是我们最不愿意看到的 ...

  7. 适配器(Adapter)模式

    适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作. 适配器模式的一些其他名称:变压器模式.转换器模式.包装(Wrapper)模式.适 ...

  8. 设计模式--适配器(Adapter)模式

    今天学习另一个设计模式,适配器(Adapter)模式,这是一个共同方向,但有特殊要求,就应用到此设计模式.写到这里,想起很久以前,有写过一篇<ASP.NET的适配器设计模式(Adapter)&g ...

  9. TypeScript学习指南第二章--接口(Interface)

    接口(Interface) TypeScript的核心机制之一在于它的类型检查系统(type-checker)只关注一个变量的"模型(shape)" 稍后我们去了解这个所谓的形状是 ...

随机推荐

  1. Oracle插入语句日期格式设置

    insert into test values (1,'2015-01-01'); 直接设置成字符串,会报出“文字与格式字符串不匹配”的异常: 如果正确插入,则要将字符型数据转成日期型数据: 1 in ...

  2. oracle 锁表

    select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = ...

  3. python读Excel

    import xlrd def open_excel(fileName="TransInfo.xlsx"): try: fileHandler = xlrd.open_workbo ...

  4. 使用win10的开始屏幕,在系统中设置简洁、快捷桌面

    前几天入手了一个本本,由于之前电脑使用的柠檬桌面软件和现在本本的分辨率不适应,意外发现win10自带的开始屏幕整理桌面也是很有意思,再加上触摸板的手势,瞬间觉得整个电脑都清洁许多.废话少说,开始上料. ...

  5. 使用Spring MVC实现数据绑定

    使用Spring MVC实现数据绑定 ——Spring MVC支持将表单参数自动绑定在映射方法的参数. ①绑定标量数据 前端代码: <form action="${pageContex ...

  6. 【python 3】 字符串方法操作汇总

    基础数据类型:str 1.1  字符串大小写转换 所有字母大写 : string.upper() 所有字母小写 : string. lower() 第一个单词的第一个字母大写,其他字母小写 :  st ...

  7. webpack创建页面的过程

    1.项目文件夹中创建各类型文件放置的文件夹,如:iTestingWeb文件夹下创建src dist文件夹,用途:src为源码 dist为生成后的文件放置位置,然后在源码文件夹中进一步按文件类型增加文件 ...

  8. vue--动画收缩

    首先 install vuex 创建store文件夹 在 store 文件夹分别建立 state.js // 状态管理 // 定义state 原始数据 const state = { fullScre ...

  9. “妄”眼欲穿之CSS 居中问题

    妄:狂妄: 不会的东西只有怀着一颗狂妄的心,假装能把它看穿吧. 作为一个什么都不会的小白,为了学习,特别在拿来主义之后写一些对于某些css布局的总结,进一步加深对知识的记忆.知识是人类的共同财富,中华 ...

  10. kafka consumer 配置详解

    1.Consumer Group 与 topic 订阅 每个Consumer 进程都会划归到一个逻辑的Consumer Group中,逻辑的订阅者是Consumer Group.所以一条message ...