接口
·接口的概述 Top
鼠标、摄像头、优盘都是使用USB接口的设备,如果想要使用他们就必须连接在USB接口上,这些设备的接口必须遵守USB接口的规范才能通过USB接口来使用。可以这样说:接口是一套规范,满足这个规范的设备,我们就可以把他们组装到一起,从而实现该设备的功能。
接口(港台称之为埠)指的是MD产品具有哪些输入输出的接口。首先作为MD产品,耳机的输出接口自然是必须有的。除了基本的耳机输出接口之外,录放型产品还应该具有线路输入的接口,这样才能够把MD和其它播放设备相连接,把播放的音频输入MD并且将其录制到MD片上。而目前的NetMD产品还应具有USB接口,这样才能够和电脑相连接,从而能够进行文件的传输。有的产品还具有麦克风的接口,可以把外部的声音通过MD录制下来。在.NET中,接口同样是一种规范和标准。它们可以约束类的行为,例如一个类如果实现IComparable接口,就必须实现CompareTo()方法。.虽然,接口种类丰富能够扩大产品的功能,但是在实际的应用中还应按需进行选购。
·接口类型(图) Top
接口类型是指游戏设备与电视机或电脑主机之间的接口类型。具体有与电视机相连的AV接口,与电脑主机相连的串口、USB接口、PCI接口、I-LINK(四针IEEE 1394接口)、连接声卡的MIDI接口、无线接口等等。
硬盘接口是硬盘与主机系统间的连接部件,作用是在硬盘缓存和主机内存之间传输数据。不同的硬盘接口决定着硬盘与计算机之间的连接速度,在整个系统中,硬盘接口的优劣直接影响着程序运行快慢和系统性能好坏。从整体的角度上,硬盘接口分为IDE、SATA、SCSI和光纤通道四种,IDE接口硬盘多用于家用产品中,也部分应用于服务器,SCSI接口的硬盘则主要应用于服务器市场,而光纤通道只在高端服务器上,价格昂贵。SATA是种新生的硬盘接口类型,还正出于市场普及阶段,在家用市场中有着广泛的前景。在IDE和SCSI的大类别下,又可以分出多种具体的接口类型,又各自拥有不同的技术规范,具备不同的传输速度,比如ATA100和SATA;Ultra160 SCSI和Ultra320 SCSI都代表着一种具体的硬盘接口,各自的速度差异也较大。
IDE<b>(图1)</b>
IDE的英文全称为“Integrated Drive Electronics”,即“电子集成驱动器”,它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。把盘体与控制器集成在一起的做法减少了硬盘接口的电缆数目与长度,数据传输的可靠性得到了增强,硬盘制造起来变得更容易,因为硬盘生产厂商不需要再担心自己的硬盘是否与其它厂商生产的控制器兼容。对用户而言,硬盘安装起来也更为方便。IDE这一接口技术从诞生至今就一直在不断发展,性能也不断的提高,其拥有的价格低廉、兼容性强的特点,为其造就了其它类型硬盘无法替代的地位。
IDE代表着硬盘的一种类型,但在实际的应用中,人们也习惯用IDE来称呼最早出现IDE类型硬盘ATA-1,这种类型的接口随着接口技术的发展已经被淘汰了,而其后发展分支出更多类型的硬盘接口,比如ATA、Ultra ATA、DMA、Ultra DMA等接口都属于IDE硬盘。
SCSI
SCSI的英文全称为“Small Computer System Interface”(小型计算机系统接口),是同IDE(ATA)完全不同的接口,IDE接口是普通PC的标准接口,而SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此SCSI硬盘主要应用于中、高端服务器和高档工作站中。
光纤通道
光纤通道的英文拼写是Fibre Channel,和SCSI接口一样光纤通道最初也不是为硬盘设计开发的接口技术,是专门为网络系统设计的,但随着存储系统对速度的需求,才逐渐应用到硬盘系统中。光纤通道硬盘是为提高多硬盘存储系统的速度和灵活性才开发的,它的出现大大提高了多硬盘系统的通信速度。光纤通道的主要特性有:热插拔性、高速带宽、远程连接、连接设备数量大等。
光纤通道是为在像服务器这样的多硬盘系统环境而设计,能满足高端工作站、服务器、海量存储子网络、外设间通过集线器、交换机和点对点连接进行双向、串行数据通讯等系统对高数据传输率的要求。
SATA
使用SATA(Serial ATA)口的硬盘又叫串口硬盘,是未来PC机硬盘的趋势。2001年,由Intel、APT、Dell、IBM、希捷、迈拓这几大厂商组成的Serial ATA委员会正式确立了Serial ATA 1.0规范,2002年,虽然串行ATA的相关设备还未正式上市,但Serial ATA委员会已抢先确立了Serial ATA 2.0规范。Serial ATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
支持Serial-ATA技术的标志 (图2)
串口硬盘是一种完全不同于并行ATA的新型硬盘接口类型,由于采用串行方式传输数据而知名。相对于并行ATA来说,就具有非常多的优势。首先,Serial ATA以连续串行的方式传送数据,一次只会传送1位数据。这样能减少SATA接口的针脚数目,使连接电缆数目变少,效率也会更高。实际上,Serial ATA 仅用四支针脚就能完成所有的工作,分别用于连接电缆、连接地线、发送数据和接收数据,同时这样的架构还能降低系统能耗和减小系统复杂性。其次,Serial ATA的起点更高、发展潜力更大,Serial ATA 1.0定义的数据传输率可达150MB/s,这比目前最新的并行ATA(即ATA/133)所能达到133MB/s的最高数据传输率还高,而在Serial ATA 2.0的数据传输率将达到300MB/s,最终SATA将实现600MB/s的最高数据传输率。
·数据线接口 Top
移动电话作为一种小巧的便携式数字设备,具有携带方便、功能强大等优点,但储存容量不大,时不时要将手机里的文件储存到电脑里,这就涉及到与电脑连接方式的问题。数据传输接口是手机与个人电脑等其他设备之间进行连接的接口。凭此接口和其他设备之间能够实现上传下载、资料同步等功能。常见的数据传输接口有USB接口、串口、红外线接口和蓝牙接口等。
·九大视频接口全接触 Top
1 射频
天线和模拟闭路连接电视机就是采用射频(RF)接口。作为最常见的视频连接方式,它可同时传输模拟视频以及音频信号。RF接口传输的是视频和音频混合编码后的信号,显示设备的电路将混合编码信号进行一系列分离、解码在输出成像。由于需要进行视频、音频混合编码,信号会互相干扰,所以它的画质输出质量是所有接口中最差的。有线电视和卫星电视接收设备也常用RF连接,但这种情况下,它们传输的是数字信号。
2 复合视频
不像射频接口那样包含了音频信号,复合视频(Composite)通常采用黄色的RCA(莲花插座)接头。“复合”含义是同一信道中传输亮度和色度信号的模拟信号,但电视机如果不能很好的分离这两种信号,就会出现虚影。
3 S端子
S端子(S-Video)连接采用Y/C(亮度/色度)分离式输出,使用四芯线传送信号,接口为四针接口。接口中,两针接地,另外两针分别传输亮度和色度信号。因为分别传送亮度和色度信号,S端子效果要好于复合视频。不过S端子的抗干扰能力较弱,所以S端子线的长度最好不要超过7米。
4 色差
色差(Component)通常标记为Y/Pb/Pr,用红、绿、蓝三种颜色来标注每条线缆和接口。绿色线缆(Y),传输亮度信号。蓝色和红色线缆(Pb和Pr)传输的是颜色差别信号。色差的效果要好于S端子,因此不少DVD以及高清播放设备上都采用该接口。如果使用优质的线材和接口,即使采用10米长的线缆,色差线也能传输优秀的画面。
5 VGA
VGA(Video Graphics Array)还有一个名称叫D-Sub。VGA接口共有15针,分成3排,每排5个孔,是显卡上应用最为广泛的接口类型,绝大多数显卡都带有此种接口。它传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。使用VGA连接设备,线缆长度最好不要超过10米,而且要注意接头是否安装牢固,否则可能引起图像中出现虚影。
6 DVI
DVI(Digital Visual Interface)接口与VGA都是电脑中最常用的接口,与VGA不同的是,DVI可以传输数字信号,不用再进过数模转换,所以画面质量非常高。目前,很多高清电视上也提供了DVI接口。需要注意的是,DVI接口有多种规范,常见的是DVI-D(Digital)和DVI-I(Intergrated)。DVI-D只能传输数字信号,大家可以用它来连接显卡和平板电视。DVI-I则在DVI-D可以和VGA相互转换。
关于DVI接口更详细信息请参考DVI接口详解
7 HDMI
HDMI(High Definition Multimedia Interface)接口是最近才出现的接口,它同DVI一样是传输全数字信号的。不同的是HDMI接口不仅能传输高清数字视频信号,还可以同时传输高质量的音频信号。同时功能跟射频接口相同,不过由于采用了全数字化的信号传输,不会像射频接口那样出现画质不佳的情况。对于没有HDMI接口的用户,可以用适配器将HDMI接口转换位DVI接口,但是这样就失去了音频信号。高质量的HDMI线材,即使长达20米,也能保证优质的画质。
8 IEEE 1394
IEEE
1394也称为火线或iLink,它能够传输数字视频和音频及机器控制信号,具有较高的带宽,且十分稳定。通常它主要用来连接数码摄像机、DVD录像机等设备。IEEE 1394接口有两种类型:6针的六角形接口和4针的小型四角形接口。6针的六角形接口可向所连接的设备供电,而4针的四角形接口则不能。
9 BNC
BNC(同轴电缆卡环形接口)接口主要用于连接高端家庭影院产品以及专业视频设备。BNC电缆有5个连接头,分别接收红、绿、蓝、水平同步和垂直同步信号。BNC接头可以让视频信号互相间干扰减少,可达到最佳信号响应效果。此外,由于BNC接口的特殊设计,连接非常紧,不必担心接口松动而产生接触不良。
·五类音频接口全接触 Top
除了高清视频带来的不仅仅是视觉上的冲击,音频方面质量也有很大提高,能给大家带来更逼真的现场效果。那么,目前主流的视频接口有哪些呢?花老师将给一一讲解市面上常见的音频接口。
RCA模拟音频
RCA接头就是常说的莲花头,利用RCA线缆传输模拟信号是目前最普遍的音频连接方式。每一根RCA线缆负责传输一个声道的音频信号,所以立体声信号,需要使用一对线缆。对于多声道系统,就要根据实际的声道数量配以相同数量的线缆。立体声RCA音频接口,一般将右声道用红色标注,左声道则用蓝色或者白色标注。
S/PDIF
S/PDIF(Sony/Philips Digital Interface,索尼和飞利浦数字接口)是由SONY公司与PHILIPS公司联合制定的一种数字音频输出接口。该接口广泛应用在CD播放机、声卡及家用电器等设备上,能改善CD的音质,给我们更纯正的听觉效果。该接口传输的是数字信号,所以不会像模拟信号那样受到干扰而降低音频质量。需要注意的是,S/PDIF接口是一种标准,同轴数字接口和光线接口都属于S/PDIF接口的范畴。
数字同轴
数字同轴(Digital Coaxial)是利用S/PDIF接口输出数字音频的接口。同轴线缆有两个同心导体,导体和屏蔽层共用同一轴心。同轴线缆是由绝缘材料隔离的铜线导体,阻抗为75欧姆,在里层绝缘材料的外部是另一层环形导体及其绝缘体,整个电缆由聚氯乙烯或特氟纶材料的护套包住。同轴电缆的优点是阻抗稳定,传输带宽高,保证了音频的质量。虽然同轴数字线缆的标准接头为BNC接头,但市面上的同轴数字线材多采用RCA接头。
光纤
光纤(Optical)以光脉冲的形式来传输数字信号,其材质以玻璃或有机玻璃为主。光纤同样采用S/PDIF接口输出,其是带宽高,信号衰减小,常常用于连接DVD播放器和AV功放,支持PCM数字音频信号、Dolby以及DTS音频信号。
XLR接口
与RCA模拟音频线缆直接传输声音的方式完全不同,平衡模拟音频(Balanced Analog Audio)接口使用两个通道分别传送信号相同而相位相反的信号。接收端设备将这两组信号相减,干扰信号就被抵消掉,从而获得高质量的模拟信号。平衡模拟音频通常采用XLR接口和大三芯接口。XLR俗称卡侬头,有三针插头和锁定装置组成。由于采用了锁定装置,XLR连接相当牢靠。大三芯接口则采用直径为6.35毫米的插头,其优点是耐磨损,适合反复插拔。平衡模拟音频连接主要出现在高级模拟音响器材或专业音频设备上。
接口指MP3播放器与电脑的连接方式。接口技术是MP3播放器的最重要的指标之一,接口的速度、方便程度自然也会影响到MP3的实用性和上传或下载歌曲的速率。·接口方式 Top
MP3播放器常见接口包括并口(EPP)、USB接口和IEEE 1394接口,早期的一般是并口,由于传输速度的限制,并口的MP3已被淘汰。如今市面上的MP3接口基本是USB接口了,优点在于传输速率快和支持热插拔。还有一类特殊的硬盘式MP3使用1394接口,随着MP3容量的增大,相信在这方面会有更多人关注,因为速度越快,在容量大的机器上就体现出它的好处了。
·计算机的接口 Top
同一计算机不同功能层之间的通信规则称为接口。
对协定进行定义的引用类型。其他类型实现接口,以保证它们支持某些操作。接口指定必须由类提供的成员或实现它的其他接口。与类相似,接口可以包含方法、属性、索引器和事件作为成员。
leon2 附加:
接口中可以声明属性、方法、事件和类型(Structure),(但不能声明变量),但是并不能设置这些成员的具体值,也就是说,只能定义,不能给它里面定义的东西赋值。
下面是个 VB.NET 2003 的例子。
在 VB.NET 的类里,实现一个接口的语句是:
implements 接口名称
例如,下面定义一个车(总称)的接口,这里的车是各种车的总称:
Public Interface ICar
Property color() As String
Property speed() As Long
Sub PrintInfo()
End Interface
然后在不同类型的“车”类里实现它:
Public Class A_Car
Implements ICar
Dim m_color As String, m_speed As Long
Public Property color() As String Implements ICar.color
Get
Return m_color
End Get
Set(ByVal Value As String)
m_color = Value
End Set
End Property
Protected Overrides Sub Finalize()
MsgBox("I was deconstructed!")
End Sub
Public Sub New()
m_color = "Red"
m_speed = 210
MsgBox("I was constructed!")
End Sub
Public Property speed() As Long Implements ICar.speed
Get
Return m_speed
End Get
Set(ByVal Value As Long)
m_speed = speed
End Set
End Property
Public Sub PrintInfo() Implements ICar.PrintInfo
MsgBox("Color: " & m_color & vbNewLine & "Speed: " & m_speed, MsgBoxStyle.Information)
End Sub
End Class
在 Form 的 Load 事件中编写:
Dim myCar As New A_Car
myCar.PrintInfo()
运行之后就创建了一个 A_Car 类的实例 myCar,然后出现两个对话框,分别说明实例已经创建和汽车的信息。当窗体卸载时,这个类的实例 myCar 将自动销毁,这时将出现一个“I was deconstructed!”的对话框。
声明一个接口时,需要考虑以下几点:
1.接口主体只限于对方法,索引器以及属性的声明;
2.接口成员是隐式公开的,如果对其显式指定访问级别,就会出现编译器错误;
3.接口中不能包含字段,构造函数和常量等;
4.在接口中不能实现任何方法,属性或者索引器;
5.在指定方法时,只需要给出返回类型,名称和参数列表,然后分号结束。
面向对象的接口
在C++中,一个类被允许继承多个类。但是在Java以后的语言不被允许。
这样,如果想继承多个类时便非常困难。所以开发方想出了新办法:接口。
一个接口内,允许包含变量、常量等一个类所包含的基本内容。但是,接口中的函数不允许设定代码,也就意味着不能把程序入口放到接口里。由上可以理解到,接口是专门被继承的。接口存在的意义也是被继承。和C++里的抽象类里的纯虚函数是相同的。不能被实例化。
定义接口的关键字是interface,例如:
public interface MyInterface{
public void add(int x,int y);
public void volume(int x,int y,int z);
}
继承接口的关键字是implements,相当于继承类的extends。
需要注意的是,当继承一个接口时,接口里的所有函数必须全部被覆盖。例如:
class Demo implements MyInterface{
public void add(int x,int y){
System.out.println(" "+(x+y));
}
public void volume(int x,int y,int z){
System.out.println(" "+(x*y*z));
}
public static void main(String args[]){
Demo d=new Demo();
d.add(10,20);
d.volume(10,10,10);
}
}
输出结果:
30
1000
当想继承多个类时,开发程序不允许,报错。这样就要用到接口。因为接口允许多重继承(,),而类不允许。所以就要用到接口。
Java里面的接口
Java里面由于不允许多重继承,所以如果要实现多个类的功能,则可以通过实现多个接口来实现。
Java接口和Java抽象类代表的就是抽象类型,就是我们需要提出的抽象层的具体表现。OOP面向对象的编程,如果要提高程序的复用率,增加程序的可维护性,可扩展性,就必须是面向接口的编程,面向抽象的编程,正确地使用接口、抽象类这些太有用的抽象类型做为你结构层次上的顶层。
Java接口和Java抽象类有太多相似的地方,又有太多特别的地方,究竟在什么地方,才是它们的最佳位置呢?把它们比较一下,你就可以发现了。
1、Java接口和Java抽象类最大的一个区别,就在于Java抽象类可以提供某些方法的部分实现,而Java接口不可以,这大概就是Java抽象类唯一的优点吧,但这个优点非常有用。如果向一个抽象类里加入一个新的具体方法时,那么它所有的子类都一下子都得到了这个新方法,而Java接口做不到这一点,如果向一个Java接口里加入一个新方法,所有实现这个接口的类就无法成功通过编译了,因为你必须让每一个类都再实现这个方法才行,这显然是Java接口的缺点。
2、一个抽象类的实现只能由这个抽象类的子类给出,也就是说,这个实现处在抽象类所定义出的继承的等级结构中,而由于Java语言的单继承性,所以抽象类作为类型定义工具的效能大打折扣。在这一点上,Java接口的优势就出来了,任何一个实现了一个Java接口所规定的方法的类都可以具有这个接口的类型,而一个类可以实现任意多个Java接口,从而这个类就有了多种类型。
3、从第2点不难看出,Java接口是定义混合类型的理想工具,混合类表明一个类不仅仅具有某个主类型的行为,而且具有其他的次要行为。
开放分类
贡献者