● 适配器(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. VC++ 实现程序重启

    转载:https://blog.csdn.net/what951006/article/details/72729448 一.创建一个Win32项目 二.窗口处理函数中,Create窗口时创建一个按钮 ...

  2. (Code) Python implementation of phrase extraction from sentence

    import os import numpy as np import pandas as pd from tqdm import tqdm import numpy as np import str ...

  3. Bytom储蓄分红合约解析

    储蓄分红合约简介 储蓄分红合约指的是项目方发起了一个锁仓计划(即储蓄合约和取现合约),用户可以在准备期自由选择锁仓金额参与该计划,等到锁仓到期之后还可以自动获取锁仓的利润.用户可以在准备期内(dueB ...

  4. 微信支付之App支付

    项目接入微信支付的准备工作: 注册成为开发者,进行资质认证,这里是需要300元的审核费用的: 在微信商户平台创建应用,提交等待审核(大致需要5-7个工作日): 应用审核通过之后,进入应用,开通微信支付 ...

  5. 小程序之 fixed定位下scroll-view左右滚动失效

    红框为悬浮 左右可以滑动 效果如下⬇️ 悬浮把最外层position:fixed;top:0;这个时候上面的导航就可以悬浮 但是会出现左右滑动不了的情况 这是因为我没给设置宽度 这个时候我们把包着sc ...

  6. intelliJ idea常用快捷键 mac版

    目录 coding project coding Command + P 显示方法参数信息 Command + N 自动生成getter.setter.hashCode.equals.toString ...

  7. ArcGIS Pro开发Web3D应用(3)——Server/Portal授权服务开发

    1.整体环境搭建完成 WebAdaptor.DataStore.Portal for arcgis.arcgis server.arcgis pro都成功部署安装,不管是同服务器还是不同服务器,最好做 ...

  8. Struts 2 框架搭建HelloWorld

    1.导包 导入相应的jar包,在blank项目中会出现 2.书写Action类 package com.littlepage.struts; public class HelloAction { pu ...

  9. 实验九 FBG 团队项目需求改进与系统设计

    任务一 A.<项目需求规格说明书>分析 根据老师的指导以及本周所学的OOA,分析改进上周编写的<项目需求规格说明书>,发现需求项目书UML图例描述不够完善,仅仅是用例图没办法更 ...

  10. JSON & XML

    什么是JSON? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子 ...