99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

包含vb.net調(diào)用麥克風(fēng)的詞條

VB.NET如何調(diào)用并播放項(xiàng)目資源內(nèi)的WAV文件。

代碼是沒(méi)有錯(cuò)的,但是其中關(guān)鍵是聲音文件資源定義字串必須使用根命名空間,不能用程序集名稱(chēng);還有就是聲音文件必須選屬性為嵌入資源。

10年積累的網(wǎng)站設(shè)計(jì)、做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有祿勸免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

My.Computer.Audio.Play(My.Resources.xxxmusic1xxx, AudioPlayMode.Background)

VB.NET的API調(diào)用

現(xiàn)在我用我所知道的為樓主介紹VB.NET的API調(diào)用,請(qǐng)樓主瀏覽一下,看看行不行。

Windows API就是Windows系統(tǒng)的API函數(shù)簡(jiǎn)稱(chēng)(Application Program Interface,即:應(yīng)用程序接口函數(shù)),它是Windows操作系統(tǒng)提供給各種開(kāi)發(fā)基于Windows平臺(tái)應(yīng)用軟件的開(kāi)發(fā)語(yǔ)言的一些公用的函數(shù),這些函數(shù)一般都比較底層,所以當(dāng)各種開(kāi)發(fā)語(yǔ)言使用自帶的函數(shù)或類(lèi)庫(kù)已無(wú)法解決問(wèn)題時(shí),調(diào)用Windows API函數(shù)往往是一種非常直接、有效的解決方法。但由于在程序中調(diào)用Windows API函數(shù)一般都很復(fù)雜,所以對(duì)于程序員來(lái)說(shuō),是否能夠靈活的使用Windows API函數(shù),往往也是其水平高低的一個(gè)重要標(biāo)志。但自從微軟推出.Net框架以后,各種開(kāi)發(fā)基于.Net平臺(tái)下的程序語(yǔ)言,如Visual Basic .Net、Visual C#等卻很少使用Windows API函數(shù),并且微軟公司也不像以前那樣,提倡在這些.Net開(kāi)發(fā)語(yǔ)言中使用Windows API函數(shù),其主要的原因如下:

1. .Net框架所附帶的類(lèi)庫(kù).Net FrameWork SDK是一個(gè)內(nèi)容豐富、功能強(qiáng)大的軟件開(kāi)發(fā)包,各種Windows API函數(shù)所實(shí)現(xiàn)的各種功能幾乎都可以在這個(gè)軟件開(kāi)發(fā)包中找到與之對(duì)應(yīng)的部分。

2. 微軟Visual Basic .Net、Visual C#等目的是編寫(xiě)跨平臺(tái)的應(yīng)用程序,如果在Visual Basic .Net、Visual C#等中使用Windows API函數(shù),這也就注定了編寫(xiě)出的程序只能運(yùn)行于Windows平臺(tái)之下,而弱化了.NET的跨平臺(tái)能力。這也就是為什么微軟不提倡在.Net平臺(tái)調(diào)用Windows API函數(shù)的原因。

雖然微軟并不提倡在Visual Basic .Net、Visual C#中調(diào)用Windows API函數(shù),但由于目前.Net 框架推出時(shí)間較短,.Net FrameWork SDK中提供的類(lèi)庫(kù)還并不足以完全替換Windows API函數(shù)的所有功能,所以在某些時(shí)候,.Net開(kāi)發(fā)語(yǔ)言還是必須要調(diào)用Windows API函數(shù)。

一.平臺(tái)調(diào)用、托管DLL、非托管DLL簡(jiǎn)介:

托管DLL就是能夠在公共語(yǔ)言運(yùn)行庫(kù)(Common Language Runtime,簡(jiǎn)稱(chēng)CLR)中能夠直接引用的,并且擴(kuò)展名為“DLL”的文件。具體所指就是封裝各種命名空間所在的DLL文件,如System.dll等。非托管DLL就是平常所的動(dòng)態(tài)鏈接庫(kù)等,其中就包括了封裝所有Windows API函數(shù)的DLL文件。各種非托管DLL中的函數(shù)在公共語(yǔ)言運(yùn)行庫(kù)中不能直接被調(diào)用,而需要經(jīng)過(guò).Net框架提供的“平臺(tái)調(diào)用”服務(wù)后才可以。

“平臺(tái)調(diào)用”是.Net框架為Visual Basic .Net、Visual C#等.Net開(kāi)發(fā)語(yǔ)言提供的一種服務(wù),用以在托管代碼中引入各種非托管DLL中封裝的函數(shù)(其中包括Windows API函數(shù))。“平臺(tái)調(diào)用”依賴(lài)于元數(shù)據(jù)在運(yùn)行時(shí)查找導(dǎo)出函數(shù)并封裝其參數(shù)。圖01公共語(yǔ)言運(yùn)行庫(kù)利用“平臺(tái)服務(wù)”調(diào)用非托管DLL中的函數(shù)的流程圖:

圖01:“平臺(tái)服務(wù)”的調(diào)用非托管函數(shù)的流程圖

在托管代碼中使用“平臺(tái)調(diào)用”服務(wù)調(diào)用非托管DLL中封裝的函數(shù)時(shí),“平臺(tái)服務(wù)”將依次執(zhí)行以下操作:

1. 查找包含該函數(shù)所在的DLL文件。

2. 如果找到,則將該DLL文件 加載到內(nèi)存中。

3. 查找函數(shù)在內(nèi)存中的地址并將其參數(shù)推到堆棧上,并封送所需的數(shù)據(jù)。

4. 將控制權(quán)轉(zhuǎn)移給非托管函數(shù)。 這樣整個(gè)函數(shù)調(diào)用完成。

在Visual Basic .Net中使用“平臺(tái)調(diào)用”服務(wù),申明Windows API函數(shù)主要有二種具體的實(shí)現(xiàn)方法:

1. 使用DllImport特征類(lèi)來(lái)申明Windows API函數(shù)。

2. 使用“Declare”語(yǔ)句來(lái)申明Windows API函數(shù)。

這二種方法雖有異曲同工之效,但在繁簡(jiǎn)上卻有很大差異,第一種方法申明過(guò)程比較復(fù)雜,很容易在申明Windows API函數(shù)時(shí)出錯(cuò),所以并不提倡。而第二種方法相對(duì)簡(jiǎn)單,并且又保存了以前Visual Basic中的很多語(yǔ)法,所以在平常時(shí)大都使用這種方法來(lái)申明Windows API函數(shù)。

二.VB.Net查看文件中圖標(biāo)的函數(shù)及申明Windows API的方法:

Visual Basic .Net要實(shí)現(xiàn)查看文件中的圖標(biāo),目前只使用.Net FrameWork SDK是無(wú)法實(shí)現(xiàn)這種功能的,正如前面所說(shuō),主要是由于.Net FrameWork SDK推出的時(shí)間較短,其功能還不可能面面俱到。解決問(wèn)題的關(guān)鍵是正確使用Windows API函數(shù),其中所涉及到的Windows API函數(shù)主要有二個(gè):其一是獲得指定文件中的圖標(biāo)數(shù)目;其二是從指定文件的指定位置導(dǎo)出圖標(biāo)的Windows句柄。這二個(gè)函數(shù)都位于“Shell32.dll”文件中,并且函數(shù)的入口點(diǎn)都為“ExtractIcon”。下面是在Visual Basic .Net中分別使用DllImport特征類(lèi)和“Declare”語(yǔ)句申明這二個(gè)Windows API函數(shù)的具體方法。

(1).使用DllImport特征類(lèi)來(lái)申明Windows API函數(shù):

下面是在Visual Basic .Net中使用DllImport特征類(lèi)申明二個(gè)Windows API函數(shù)的具體示例:

'函數(shù)ExtractIcon,其功能是是從指定文件的指定位置導(dǎo)出圖標(biāo)的Windows句柄。

< System.Runtime.InteropServices.DllImport ( "Shell32.dll" , EntryPoint := "ExtractIcon" ) > _

Public Function _

ExtractIcon ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr

End Function

'函數(shù)Icon_Num,其功能是獲得指定文件中的圖標(biāo)數(shù)目

< System.Runtime.InteropServices.DllImport ( "Shell32.dll" , EntryPoint := "ExtractIcon" ) > _

Public Function _

Icon_Num ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As Integer ) As Integer

End Function

在使用DllImport特征類(lèi)申明Windows API函數(shù)時(shí),如果申明的函數(shù)名稱(chēng)和函數(shù)的入口點(diǎn)相同,則可以在申明Windows API函數(shù)時(shí),省略定義函數(shù)入口點(diǎn)對(duì)應(yīng)的代碼,即EntryPoint對(duì)象字段對(duì)應(yīng)的代碼,這樣聲明ExtractIcon函數(shù)的代碼也可以簡(jiǎn)化為如下所示:

< System.Runtime.InteropServices.DllImport ( "Shell32.dll" ) > _

Public Function _

ExtractIcon ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr

End Function

(2).使用“Declare”語(yǔ)句來(lái)申明Windows API函數(shù):

使用“Declare”語(yǔ)句的確比使用DllImport特征類(lèi)要簡(jiǎn)單了許多,下面是在Visual Basic .Net中使用“Declare”語(yǔ)句來(lái)聲明上述二個(gè)Windows API函數(shù)的具體方法:

Declare Auto Function ExtractIcon Lib "Shell32.dll" Alias "ExtractIcon" ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr

'聲明ExtractIcon函數(shù)

Declare Auto Function Icon_Num Lib "Shell32.dll" Alias "ExtractIcon" ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As Integer ) As Integer

'聲明Icon_Num函數(shù)

在Visual Basic .Net中聲明Windows API函數(shù)時(shí),“Declare”語(yǔ)句中Alias關(guān)鍵字的作用相當(dāng)于使用DllImport特征類(lèi)中的EntryPoint對(duì)象字段。同樣在使用“Declare”語(yǔ)句聲明Windows API函數(shù)時(shí),如果聲明的函數(shù)和函數(shù)的入口點(diǎn)相同,也可以省略Alias關(guān)鍵字對(duì)應(yīng)的代碼,所以ExtractIcon函數(shù)也可以簡(jiǎn)化為如下:

Declare Auto Function ExtractIcon Lib "Shell32.dll" ( ByVal src As System.IntPtr , ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr

下面就結(jié)合一個(gè)示例的編寫(xiě)過(guò)程來(lái)掌握的這二個(gè)Windows API函數(shù)的具體使用方法,這個(gè)示例的作用就是讀取指定文件中的圖標(biāo)數(shù)目,并顯示文件中的圖標(biāo)。

三.本文中程序的編寫(xiě)、調(diào)試和運(yùn)行環(huán)境:

(1).視窗2000高級(jí)服務(wù)器版。

(2).Visual Studio .Net 2003企業(yè)結(jié)構(gòu)設(shè)計(jì)版,.Net FrameWork SDK版本號(hào)4322。

四.Visual Basic .Net讀取文件中的圖標(biāo)的實(shí)現(xiàn)步驟:

下面介紹的示例,其功能讀取指定文件中包含的圖標(biāo)數(shù)目,并把這些圖標(biāo)全部顯示出來(lái)。下面是這個(gè)示例的實(shí)現(xiàn)步驟:

1. 啟動(dòng)Visual Studio .Net。

2. 選擇菜單【文件】|【新建】|【項(xiàng)目】后,彈出【新建項(xiàng)目】對(duì)話(huà)框。

3. 將【項(xiàng)目類(lèi)型】設(shè)置為【Visual Basic項(xiàng)目】。

4. 將【模板】設(shè)置為【W(wǎng)indows應(yīng)用程序】。

5. 在【名稱(chēng)】文本框中輸入【Visual Basic .Net查看文件中的圖標(biāo)】。

6. 在【位置】的文本框中輸入【E:\VS.NET項(xiàng)目】,然后單擊【確定】按鈕,這樣在【E:\VS.NET項(xiàng)目】目錄中就產(chǎn)生了名稱(chēng)為【Visual Basic .Net查看文件中的圖標(biāo)】文件夾,里面存放著【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目的所有文件。具體如圖02所示:

圖02:【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目的【新建項(xiàng)目】對(duì)話(huà)框

7. 選擇菜單【項(xiàng)目】|【添加新項(xiàng)】,在彈出的對(duì)話(huà)框中的【模板】設(shè)置為【模塊】,【名稱(chēng)】文本框設(shè)置為【Module1.vb】后。單擊【打開(kāi)】按鈕,則在項(xiàng)目中增加了一個(gè)模板文件,名稱(chēng)為【Module1.vb】。

8. 把Visual Stuido .Net的當(dāng)前窗口切換到Module1.vb的代碼編輯窗口,并在其Module1的代碼區(qū)中添加下列代碼,下列代碼是用二種方式聲明二個(gè)Windows API函數(shù):

< System.Runtime.InteropServices.DllImport ( "Shell32.dll" ) > _

Public Function _

ExtractIcon ( ByVal src As System.IntPtr , ByVal strFileName As String , ByVal uiIconIndex As UInt32 ) As System.IntPtr

End Function

'聲明ExtractIcon函數(shù)

Declare Auto Function Icon_Num Lib "Shell32.dll" Alias "ExtractIcon" ( ByVal src As System.IntPtr , ByVal strFileName As String , ByVal uiIconIndex As Integer ) As Integer

9. 把Visual Studio .Net的當(dāng)前窗口切換到Form1窗體的設(shè)計(jì)查看,并從【工具箱】中的【W(wǎng)indows窗體】選項(xiàng)卡中拖入下列組件到Form1窗體:

四個(gè)Label組件,其中二個(gè)用以顯示提示信息,另外二個(gè)分別用以顯示選擇的文件名稱(chēng)和這個(gè)文件中包含的圖標(biāo)數(shù)目。

一個(gè)ListView組件,利用其顯示大圖標(biāo)的屬性用以顯示選定文件中的圖標(biāo)。

一個(gè)OpenFileDialog組件,用以選擇要查看圖標(biāo)的文件名稱(chēng)。

一個(gè)ImageList組件,它起的是橋梁的作用,首先把從文件中導(dǎo)出的圖標(biāo)存放到這里,然后再提供ListView組件顯示出來(lái)。

一個(gè)Button組件。

10. 按照表01中數(shù)值來(lái)設(shè)定設(shè)定組件的主要屬性:

組件類(lèi)型 組件名稱(chēng) 屬性 設(shè)置結(jié)果

Form Form1 Text VB.NET查看文件中的圖標(biāo)

Form1 MaximizeBox False

Form1 MinimizeBox False

Form1 FormBorderStyle FixedSingle

ListView ListView1 ImageList1 LargeImageList

ListView1 MultiSelect False

ListView1 Size Size ( 380 , 208 )

Button Button1 Text 選擇文件

Button1 FlatStyle Flat

ImageList ImageList1 Size Size ( 32 , 32 )

ImageList1 TransparentColor Color.Transparent

Label Label1 Text 文件名稱(chēng):

Label2 Text 圖標(biāo)數(shù)目:

Label3 Text ""

Label4 Text "0"

表01:【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目窗體中各組件的主要屬性設(shè)定數(shù)值表

并按照?qǐng)D02中各組件的位置、大小和排列方式來(lái)調(diào)整窗體中各個(gè)組件:

圖02:【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目的設(shè)計(jì)界面

11. 把Visual Studio .Net當(dāng)前窗口切換到Form.vb的代碼編輯窗口,并用下列代碼替換Form1.vb中的Button1組件的Click事件的處理代碼,下列代碼是在Button1組件的Click事件中處理查看文件中圖標(biāo)的功能,具體如下:

Private Sub Button1_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button1.Click

If OpenFileDialog1.ShowDialog ( ) = DialogResult.OK Then

'清除組件中的所有項(xiàng)目

ListView1.Items.Clear ( )

ImageList1.Images.Clear ( )

Dim sfName As String = OpenFileDialog1.FileName

Label3.Text = sfName

Dim iIcon_Num As Integer = Icon_Num ( IntPtr.Zero , sfName , -1 )

'顯示文件中的圖標(biāo)數(shù)目

Label4.Text = iIcon_Num.ToString ( )

Dim i As Integer

For i = 0 To iIcon_Num - 1 Step 1

'強(qiáng)制實(shí)現(xiàn)int到uint類(lèi)型轉(zhuǎn)換

Dim j As UInt32

j = System.Convert.ToUInt32 ( i )

Dim hIcon As System.IntPtr = ExtractIcon ( IntPtr.Zero , sfName , j )

'在imageList1組件中加入當(dāng)然提取的圖標(biāo)

ImageList1.Images.Add ( Icon.FromHandle ( hIcon ).ToBitmap ( ) )

'在ListView組件中加入一個(gè)項(xiàng)目

ListView1.Items.Add ( "第" + ( i + 1 ).ToString ( ) + "個(gè)圖標(biāo)" )

'把加入項(xiàng)目的圖象索引指向剛才加入圖標(biāo)在imagList1組件中的索引,從而顯示圖標(biāo)

ListView1.Items ( i ).ImageIndex = i

Next i

End If

End Sub

12. 至此,在上述步驟都正確執(zhí)行后,【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目的全部工作就完成了。單擊快捷鍵F5就可以運(yùn)行程序,此時(shí)單擊【選擇文件】按鈕選擇文件后,程序就能夠讀取這個(gè)文件中的圖標(biāo)及其數(shù)目,并顯示出來(lái)了。具體如圖03所示:

圖03:【Visual Basic .Net查看文件中的圖標(biāo)】項(xiàng)目的運(yùn)行界面

五.總結(jié):

解決Visual Basic .Net查看文件中的圖標(biāo)的關(guān)鍵并非是使用.Net框架中提供的類(lèi)庫(kù),而是使用Windows的API函數(shù)。雖然這與利用Visual Basic .Net開(kāi)發(fā)跨平臺(tái)程序的初衷相違背,但的確不失為一種解決問(wèn)題的方法。有些時(shí)候通過(guò)Windows API函數(shù)能夠快捷、方便的解決實(shí)際問(wèn)題,而這往往是只使用.Net FrameWork SDK所望塵莫及的,但隨著.Net FrameWork SDK內(nèi)容的不斷豐富,各種新的組成部分和新的功能不斷加入,可以預(yù)見(jiàn)的是,在未來(lái)的.Net FrameWork SDK中必將擁有可以替換本文中介紹的二個(gè)Windows API函數(shù)的組成部分。

關(guān)于接口的提問(wèn)

接口的概述

鼠標(biāo)、攝像頭、優(yōu)盤(pán)都是使用USB接口的設(shè)備,如果想要使用他們就必須連接在USB接口上,這些設(shè)備的接口必須遵守USB接口的規(guī)范才能通過(guò)USB接口來(lái)使用。可以這樣說(shuō):接口是一套規(guī)范,滿(mǎn)足這個(gè)規(guī)范的設(shè)備,我們就可以把他們組裝到一起,從而實(shí)現(xiàn)該設(shè)備的功能。

接口(港臺(tái)稱(chēng)之為埠)指的是MD產(chǎn)品具有哪些輸入輸出的接口。首先作為MD產(chǎn)品,耳機(jī)的輸出接口自然是必須有的。除了基本的耳機(jī)輸出接口之外,錄放型產(chǎn)品還應(yīng)該具有線(xiàn)路輸入的接口,這樣才能夠把MD和其它播放設(shè)備相連接,把播放的音頻輸入MD并且將其錄制到MD片上。而目前的NetMD產(chǎn)品還應(yīng)具有USB接口,這樣才能夠和電腦相連接,從而能夠進(jìn)行文件的傳輸。有的產(chǎn)品還具有麥克風(fēng)的接口,可以把外部的聲音通過(guò)MD錄制下來(lái)。在.NET中,接口同樣是一種規(guī)范和標(biāo)準(zhǔn)。它們可以約束類(lèi)的行為,例如一個(gè)類(lèi)如果實(shí)現(xiàn)IComparable接口,就必須實(shí)現(xiàn)CompareTo()方法。.雖然,接口種類(lèi)豐富能夠擴(kuò)大產(chǎn)品的功能,但是在實(shí)際的應(yīng)用中還應(yīng)按需進(jìn)行選購(gòu)。

[編輯本段]接口類(lèi)型(圖)

接口類(lèi)型是指游戲設(shè)備與電視機(jī)或電腦主機(jī)之間的接口類(lèi)型。具體有與電視機(jī)相連的AV接口,與電腦主機(jī)相連的串口、USB接口、PCI接口、I-LINK(四針I(yè)EEE 1394接口)、連接聲卡的MIDI接口、無(wú)線(xiàn)接口等等。

硬盤(pán)接口是硬盤(pán)與主機(jī)系統(tǒng)間的連接部件,作用是在硬盤(pán)緩存和主機(jī)內(nèi)存之間傳輸數(shù)據(jù)。不同的硬盤(pán)接口決定著硬盤(pán)與計(jì)算機(jī)之間的連接速度,在整個(gè)系統(tǒng)中,硬盤(pán)接口的優(yōu)劣直接影響著程序運(yùn)行快慢和系統(tǒng)性能好壞。從整體的角度上,硬盤(pán)接口分為IDE、SATA、SCSI和光纖通道四種,IDE接口硬盤(pán)多用于家用產(chǎn)品中,也部分應(yīng)用于服務(wù)器,SCSI接口的硬盤(pán)則主要應(yīng)用于服務(wù)器市場(chǎng),而光纖通道只在高端服務(wù)器上,價(jià)格昂貴。SATA是種新生的硬盤(pán)接口類(lèi)型,還正出于市場(chǎng)普及階段,在家用市場(chǎng)中有著廣泛的前景。在IDE和SCSI的大類(lèi)別下,又可以分出多種具體的接口類(lèi)型,又各自擁有不同的技術(shù)規(guī)范,具備不同的傳輸速度,比如ATA100和SATA;Ultra160 SCSI和Ultra320 SCSI都代表著一種具體的硬盤(pán)接口,各自的速度差異也較大。

IDEb(圖1)/b

IDE的英文全稱(chēng)為“Integrated Drive Electronics”,即“電子集成驅(qū)動(dòng)器”,它的本意是指把“硬盤(pán)控制器”與“盤(pán)體”集成在一起的硬盤(pán)驅(qū)動(dòng)器。把盤(pán)體與控制器集成在一起的做法減少了硬盤(pán)接口的電纜數(shù)目與長(zhǎng)度,數(shù)據(jù)傳輸?shù)目煽啃缘玫搅嗽鰪?qiáng),硬盤(pán)制造起來(lái)變得更容易,因?yàn)橛脖P(pán)生產(chǎn)廠(chǎng)商不需要再擔(dān)心自己的硬盤(pán)是否與其它廠(chǎng)商生產(chǎn)的控制器兼容。對(duì)用戶(hù)而言,硬盤(pán)安裝起來(lái)也更為方便。IDE這一接口技術(shù)從誕生至今就一直在不斷發(fā)展,性能也不斷的提高,其擁有的價(jià)格低廉、兼容性強(qiáng)的特點(diǎn),為其造就了其它類(lèi)型硬盤(pán)無(wú)法替代的地位。

IDE代表著硬盤(pán)的一種類(lèi)型,但在實(shí)際的應(yīng)用中,人們也習(xí)慣用IDE來(lái)稱(chēng)呼最早出現(xiàn)IDE類(lèi)型硬盤(pán)ATA-1,這種類(lèi)型的接口隨著接口技術(shù)的發(fā)展已經(jīng)被淘汰了,而其后發(fā)展分支出更多類(lèi)型的硬盤(pán)接口,比如ATA、Ultra ATA、DMA、Ultra DMA等接口都屬于IDE硬盤(pán)。

SCSI

SCSI的英文全稱(chēng)為“Small Computer System Interface”(小型計(jì)算機(jī)系統(tǒng)接口),是同IDE(ATA)完全不同的接口,IDE接口是普通PC的標(biāo)準(zhǔn)接口,而SCSI并不是專(zhuān)門(mén)為硬盤(pán)設(shè)計(jì)的接口,是一種廣泛應(yīng)用于小型機(jī)上的高速數(shù)據(jù)傳輸技術(shù)。SCSI接口具有應(yīng)用范圍廣、多任務(wù)、帶寬大、CPU占用率低,以及熱插拔等優(yōu)點(diǎn),但較高的價(jià)格使得它很難如IDE硬盤(pán)般普及,因此SCSI硬盤(pán)主要應(yīng)用于中、高端服務(wù)器和高檔工作站中。

光纖通道

光纖通道的英文拼寫(xiě)是Fibre Channel,和SCSI接口一樣光纖通道最初也不是為硬盤(pán)設(shè)計(jì)開(kāi)發(fā)的接口技術(shù),是專(zhuān)門(mén)為網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì)的,但隨著存儲(chǔ)系統(tǒng)對(duì)速度的需求,才逐漸應(yīng)用到硬盤(pán)系統(tǒng)中。光纖通道硬盤(pán)是為提高多硬盤(pán)存儲(chǔ)系統(tǒng)的速度和靈活性才開(kāi)發(fā)的,它的出現(xiàn)大大提高了多硬盤(pán)系統(tǒng)的通信速度。光纖通道的主要特性有:熱插拔性、高速帶寬、遠(yuǎn)程連接、連接設(shè)備數(shù)量大等。

光纖通道是為在像服務(wù)器這樣的多硬盤(pán)系統(tǒng)環(huán)境而設(shè)計(jì),能滿(mǎn)足高端工作站、服務(wù)器、海量存儲(chǔ)子網(wǎng)絡(luò)、外設(shè)間通過(guò)集線(xiàn)器、交換機(jī)和點(diǎn)對(duì)點(diǎn)連接進(jìn)行雙向、串行數(shù)據(jù)通訊等系統(tǒng)對(duì)高數(shù)據(jù)傳輸率的要求。

SATA

使用SATA(Serial ATA)口的硬盤(pán)又叫串口硬盤(pán),是未來(lái)PC機(jī)硬盤(pán)的趨勢(shì)。2001年,由Intel、APT、Dell、IBM、希捷、邁拓這幾大廠(chǎng)商組成的Serial ATA委員會(huì)正式確立了Serial ATA 1.0規(guī)范,2002年,雖然串行ATA的相關(guān)設(shè)備還未正式上市,但Serial ATA委員會(huì)已搶先確立了Serial ATA 2.0規(guī)范。Serial ATA采用串行連接方式,串行ATA總線(xiàn)使用嵌入式時(shí)鐘信號(hào),具備了更強(qiáng)的糾錯(cuò)能力,與以往相比其最大的區(qū)別在于能對(duì)傳輸指令(不僅僅是數(shù)據(jù))進(jìn)行檢查,如果發(fā)現(xiàn)錯(cuò)誤會(huì)自動(dòng)矯正,這在很大程度上提高了數(shù)據(jù)傳輸?shù)目煽啃浴4薪涌谶€具有結(jié)構(gòu)簡(jiǎn)單、支持熱插拔的優(yōu)點(diǎn)。

支持Serial-ATA技術(shù)的標(biāo)志 (圖2)

串口硬盤(pán)是一種完全不同于并行ATA的新型硬盤(pán)接口類(lèi)型,由于采用串行方式傳輸數(shù)據(jù)而知名。相對(duì)于并行ATA來(lái)說(shuō),就具有非常多的優(yōu)勢(shì)。首先,Serial ATA以連續(xù)串行的方式傳送數(shù)據(jù),一次只會(huì)傳送1位數(shù)據(jù)。這樣能減少SATA接口的針腳數(shù)目,使連接電纜數(shù)目變少,效率也會(huì)更高。實(shí)際上,Serial ATA 僅用四支針腳就能完成所有的工作,分別用于連接電纜、連接地線(xiàn)、發(fā)送數(shù)據(jù)和接收數(shù)據(jù),同時(shí)這樣的架構(gòu)還能降低系統(tǒng)能耗和減小系統(tǒng)復(fù)雜性。其次,Serial ATA的起點(diǎn)更高、發(fā)展?jié)摿Ω螅琒erial ATA 1.0定義的數(shù)據(jù)傳輸率可達(dá)150MB/s,這比目前最新的并行ATA(即ATA/133)所能達(dá)到133MB/s的最高數(shù)據(jù)傳輸率還高,而在Serial ATA 2.0的數(shù)據(jù)傳輸率將達(dá)到300MB/s,最終SATA將實(shí)現(xiàn)600MB/s的最高數(shù)據(jù)傳輸率。

[編輯本段]數(shù)據(jù)線(xiàn)接口

移動(dòng)電話(huà)作為一種小巧的便攜式數(shù)字設(shè)備,具有攜帶方便、功能強(qiáng)大等優(yōu)點(diǎn),但儲(chǔ)存容量不大,時(shí)不時(shí)要將手機(jī)里的文件儲(chǔ)存到電腦里,這就涉及到與電腦連接方式的問(wèn)題。數(shù)據(jù)傳輸接口是手機(jī)與個(gè)人電腦等其他設(shè)備之間進(jìn)行連接的接口。憑此接口和其他設(shè)備之間能夠?qū)崿F(xiàn)上傳下載、資料同步等功能。常見(jiàn)的數(shù)據(jù)傳輸接口有USB接口、串口、紅外線(xiàn)接口和藍(lán)牙接口等。

[編輯本段]九大視頻接口全接觸

1 射頻

天線(xiàn)和模擬閉路連接電視機(jī)就是采用射頻(RF)接口。作為最常見(jiàn)的視頻連接方式,它可同時(shí)傳輸模擬視頻以及音頻信號(hào)。RF接口傳輸?shù)氖且曨l和音頻混合編碼后的信號(hào),顯示設(shè)備的電路將混合編碼信號(hào)進(jìn)行一系列分離、解碼在輸出成像。由于需要進(jìn)行視頻、音頻混合編碼,信號(hào)會(huì)互相干擾,所以它的畫(huà)質(zhì)輸出質(zhì)量是所有接口中最差的。有線(xiàn)電視和衛(wèi)星電視接收設(shè)備也常用RF連接,但這種情況下,它們傳輸?shù)氖菙?shù)字信號(hào)。

2 復(fù)合視頻

不像射頻接口那樣包含了音頻信號(hào),復(fù)合視頻(Composite)通常采用黃色的RCA(蓮花插座)接頭。“復(fù)合”含義是同一信道中傳輸亮度和色度信號(hào)的模擬信號(hào),但電視機(jī)如果不能很好的分離這兩種信號(hào),就會(huì)出現(xiàn)虛影。

3 S端子

S端子(S-Video)連接采用Y/C(亮度/色度)分離式輸出,使用四芯線(xiàn)傳送信號(hào),接口為四針接口。接口中,兩針接地,另外兩針?lè)謩e傳輸亮度和色度信號(hào)。因?yàn)榉謩e傳送亮度和色度信號(hào),S端子效果要好于復(fù)合視頻。不過(guò)S端子的抗干擾能力較弱,所以S端子線(xiàn)的長(zhǎng)度最好不要超過(guò)7米。

4 色差

色差(Component)通常標(biāo)記為Y/Pb/Pr,用紅、綠、藍(lán)三種顏色來(lái)標(biāo)注每條線(xiàn)纜和接口。綠色線(xiàn)纜(Y),傳輸亮度信號(hào)。藍(lán)色和紅色線(xiàn)纜(Pb和Pr)傳輸?shù)氖穷伾顒e信號(hào)。色差的效果要好于S端子,因此不少DVD以及高清播放設(shè)備上都采用該接口。如果使用優(yōu)質(zhì)的線(xiàn)材和接口,即使采用10米長(zhǎng)的線(xiàn)纜,色差線(xiàn)也能傳輸優(yōu)秀的畫(huà)面。

5 VGA

VGA(Video Graphics Array)還有一個(gè)名稱(chēng)叫D-Sub。VGA接口共有15針,分成3排,每排5個(gè)孔,是顯卡上應(yīng)用最為廣泛的接口類(lèi)型,絕大多數(shù)顯卡都帶有此種接口。它傳輸紅、綠、藍(lán)模擬信號(hào)以及同步信號(hào)(水平和垂直信號(hào))。使用VGA連接設(shè)備,線(xiàn)纜長(zhǎng)度最好不要超過(guò)10米,而且要注意接頭是否安裝牢固,否則可能引起圖像中出現(xiàn)虛影。

6 DVI

DVI(Digital Visual Interface)接口與VGA都是電腦中最常用的接口,與VGA不同的是,DVI可以傳輸數(shù)字信號(hào),不用再進(jìn)過(guò)數(shù)模轉(zhuǎn)換,所以畫(huà)面質(zhì)量非常高。目前,很多高清電視上也提供了DVI接口。需要注意的是,DVI接口有多種規(guī)范,常見(jiàn)的是DVI-D(Digital)和DVI-I(Intergrated)。DVI-D只能傳輸數(shù)字信號(hào),大家可以用它來(lái)連接顯卡和平板電視。DVI-I則在DVI-D可以和VGA相互轉(zhuǎn)換。

關(guān)于DVI接口更詳細(xì)信息請(qǐng)參考DVI接口詳解

7 HDMI

HDMI(High Definition Multimedia Interface)接口是最近才出現(xiàn)的接口,它同DVI一樣是傳輸全數(shù)字信號(hào)的。不同的是HDMI接口不僅能傳輸高清數(shù)字視頻信號(hào),還可以同時(shí)傳輸高質(zhì)量的音頻信號(hào)。同時(shí)功能跟射頻接口相同,不過(guò)由于采用了全數(shù)字化的信號(hào)傳輸,不會(huì)像射頻接口那樣出現(xiàn)畫(huà)質(zhì)不佳的情況。對(duì)于沒(méi)有HDMI接口的用戶(hù),可以用適配器將HDMI接口轉(zhuǎn)換位DVI接口,但是這樣就失去了音頻信號(hào)。高質(zhì)量的HDMI線(xiàn)材,即使長(zhǎng)達(dá)20米,也能保證優(yōu)質(zhì)的畫(huà)質(zhì)。

8 IEEE 1394

IEEE

1394也稱(chēng)為火線(xiàn)或iLink,它能夠傳輸數(shù)字視頻和音頻及機(jī)器控制信號(hào),具有較高的帶寬,且十分穩(wěn)定。通常它主要用來(lái)連接數(shù)碼攝像機(jī)、DVD錄像機(jī)等設(shè)備。IEEE 1394接口有兩種類(lèi)型:6針的六角形接口和4針的小型四角形接口。6針的六角形接口可向所連接的設(shè)備供電,而4針的四角形接口則不能。

9 BNC

BNC(同軸電纜卡環(huán)形接口)接口主要用于連接高端家庭影院產(chǎn)品以及專(zhuān)業(yè)視頻設(shè)備。BNC電纜有5個(gè)連接頭,分別接收紅、綠、藍(lán)、水平同步和垂直同步信號(hào)。BNC接頭可以讓視頻信號(hào)互相間干擾減少,可達(dá)到最佳信號(hào)響應(yīng)效果。此外,由于BNC接口的特殊設(shè)計(jì),連接非常緊,不必?fù)?dān)心接口松動(dòng)而產(chǎn)生接觸不良。

[編輯本段]五類(lèi)音頻接口全接觸

除了高清視頻帶來(lái)的不僅僅是視覺(jué)上的沖擊,音頻方面質(zhì)量也有很大提高,能給大家?guī)?lái)更逼真的現(xiàn)場(chǎng)效果。目前主流的音頻接口有如下幾種:

RCA模擬音頻

RCA接頭就是常說(shuō)的蓮花頭,利用RCA線(xiàn)纜傳輸模擬信號(hào)是目前最普遍的音頻連接方式。每一根RCA線(xiàn)纜負(fù)責(zé)傳輸一個(gè)聲道的音頻信號(hào),所以立體聲信號(hào),需要使用一對(duì)線(xiàn)纜。對(duì)于多聲道系統(tǒng),就要根據(jù)實(shí)際的聲道數(shù)量配以相同數(shù)量的線(xiàn)纜。立體聲RCA音頻接口,一般將右聲道用紅色標(biāo)注,左聲道則用藍(lán)色或者白色標(biāo)注。

S/PDIF

S/PDIF(Sony/Philips Digital Interface,索尼和飛利浦?jǐn)?shù)字接口)是由SONY公司與PHILIPS公司聯(lián)合制定的一種數(shù)字音頻輸出接口。該接口廣泛應(yīng)用在CD播放機(jī)、聲卡及家用電器等設(shè)備上,能改善CD的音質(zhì),給我們更純正的聽(tīng)覺(jué)效果。該接口傳輸?shù)氖菙?shù)字信號(hào),所以不會(huì)像模擬信號(hào)那樣受到干擾而降低音頻質(zhì)量。需要注意的是,S/PDIF接口是一種標(biāo)準(zhǔn),同軸數(shù)字接口和光線(xiàn)接口都屬于S/PDIF接口的范疇。

數(shù)字同軸

數(shù)字同軸(Digital Coaxial)是利用S/PDIF接口輸出數(shù)字音頻的接口。同軸線(xiàn)纜有兩個(gè)同心導(dǎo)體,導(dǎo)體和屏蔽層共用同一軸心。同軸線(xiàn)纜是由絕緣材料隔離的銅線(xiàn)導(dǎo)體,阻抗為75歐姆,在里層絕緣材料的外部是另一層環(huán)形導(dǎo)體及其絕緣體,整個(gè)電纜由聚氯乙烯或特氟綸材料的護(hù)套包住。同軸電纜的優(yōu)點(diǎn)是阻抗穩(wěn)定,傳輸帶寬高,保證了音頻的質(zhì)量。雖然同軸數(shù)字線(xiàn)纜的標(biāo)準(zhǔn)接頭為BNC接頭,但市面上的同軸數(shù)字線(xiàn)材多采用RCA接頭。

光纖

光纖(Optical)以光脈沖的形式來(lái)傳輸數(shù)字信號(hào),其材質(zhì)以玻璃或有機(jī)玻璃為主。光纖同樣采用S/PDIF接口輸出,其是帶寬高,信號(hào)衰減小,常常用于連接DVD播放器和AV功放,支持PCM數(shù)字音頻信號(hào)、Dolby以及DTS音頻信號(hào)。

XLR接口

與RCA模擬音頻線(xiàn)纜直接傳輸聲音的方式完全不同,平衡模擬音頻(Balanced Analog Audio)接口使用兩個(gè)通道分別傳送信號(hào)相同而相位相反的信號(hào)。接收端設(shè)備將這兩組信號(hào)相減,干擾信號(hào)就被抵消掉,從而獲得高質(zhì)量的模擬信號(hào)。平衡模擬音頻通常采用XLR接口和大三芯接口。XLR俗稱(chēng)卡儂頭,有三針插頭和鎖定裝置組成。由于采用了鎖定裝置,XLR連接相當(dāng)牢靠。大三芯接口則采用直徑為6.35毫米的插頭,其優(yōu)點(diǎn)是耐磨損,適合反復(fù)插拔。平衡模擬音頻連接主要出現(xiàn)在高級(jí)模擬音響器材或?qū)I(yè)音頻設(shè)備上。

[編輯本段]接口方式

接口指MP3播放器與電腦的連接方式。接口技術(shù)是MP3播放器的最重要的指標(biāo)之一,接口的速度、方便程度自然也會(huì)影響到MP3的實(shí)用性和上傳或下載歌曲的速率。

MP3播放器常見(jiàn)接口包括并口(EPP)、USB接口和IEEE 1394接口,早期的一般是并口,由于傳輸速度的限制,并口的MP3已被淘汰。如今市面上的MP3接口基本是USB接口了,優(yōu)點(diǎn)在于傳輸速率快和支持熱插拔。還有一類(lèi)特殊的硬盤(pán)式MP3使用1394接口,隨著MP3容量的增大,相信在這方面會(huì)有更多人關(guān)注,因?yàn)樗俣仍娇欤谌萘看蟮臋C(jī)器上就體現(xiàn)出它的好處了。

[編輯本段]計(jì)算機(jī)的接口

同一計(jì)算機(jī)不同功能層之間的通信規(guī)則稱(chēng)為接口。

對(duì)協(xié)定進(jìn)行定義的引用類(lèi)型。其他類(lèi)型實(shí)現(xiàn)接口,以保證它們支持某些操作。接口指定必須由類(lèi)提供的成員或?qū)崿F(xiàn)它的其他接口。與類(lèi)相似,接口可以包含方法、屬性、索引器和事件作為成員。

leon2 附加:

接口中可以聲明屬性、方法、事件和類(lèi)型(Structure),(但不能聲明變量),但是并不能設(shè)置這些成員的具體值,也就是說(shuō),只能定義,不能給它里面定義的東西賦值。

下面是個(gè) VB.NET 2003 的例子。

在 VB.NET 的類(lèi)里,實(shí)現(xiàn)一個(gè)接口的語(yǔ)句是:

implements 接口名稱(chēng)

例如,下面定義一個(gè)車(chē)(總稱(chēng))的接口,這里的車(chē)是各種車(chē)的總稱(chēng):

Public Interface ICar

Property color() As String

Property speed() As Long

Sub PrintInfo()

End Interface

然后在不同類(lèi)型的“車(chē)”類(lèi)里實(shí)現(xiàn)它:

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 事件中編寫(xiě):

Dim myCar As New A_Car

myCar.PrintInfo()

運(yùn)行之后就創(chuàng)建了一個(gè) A_Car 類(lèi)的實(shí)例 myCar,然后出現(xiàn)兩個(gè)對(duì)話(huà)框,分別說(shuō)明實(shí)例已經(jīng)創(chuàng)建和汽車(chē)的信息。當(dāng)窗體卸載時(shí),這個(gè)類(lèi)的實(shí)例 myCar 將自動(dòng)銷(xiāo)毀,這時(shí)將出現(xiàn)一個(gè)“I was deconstructed!”的對(duì)話(huà)框。

聲明一個(gè)接口時(shí),需要考慮以下幾點(diǎn):

1.接口主體只限于對(duì)方法,索引器以及屬性的聲明;

2.接口成員是隱式公開(kāi)的,如果對(duì)其顯式指定訪(fǎng)問(wèn)級(jí)別,就會(huì)出現(xiàn)編譯器錯(cuò)誤;

3.接口中不能包含字段,構(gòu)造函數(shù)和常量等;

4.在接口中不能實(shí)現(xiàn)任何方法,屬性或者索引器;

5.在指定方法時(shí),只需要給出返回類(lèi)型,名稱(chēng)和參數(shù)列表,然后分號(hào)結(jié)束。

面向?qū)ο蟮慕涌?/p>

在C++中,一個(gè)類(lèi)被允許繼承多個(gè)類(lèi)。但是在Java以后的語(yǔ)言不被允許。

這樣,如果想繼承多個(gè)類(lèi)時(shí)便非常困難。所以開(kāi)發(fā)方想出了新辦法:接口。

一個(gè)接口內(nèi),允許包含變量、常量等一個(gè)類(lèi)所包含的基本內(nèi)容。但是,接口中的函數(shù)不允許設(shè)定代碼,也就意味著不能把程序入口放到接口里。由上可以理解到,接口是專(zhuān)門(mén)被繼承的。接口存在的意義也是被繼承。和C++里的抽象類(lèi)里的純虛函數(shù)是相同的。不能被實(shí)例化。

定義接口的關(guān)鍵字是interface,例如:

public interface MyInterface{

public void add(int x,int y);

public void volume(int x,int y,int z);

}

繼承接口的關(guān)鍵字是implements,相當(dāng)于繼承類(lèi)的extends。

需要注意的是,當(dāng)繼承一個(gè)接口時(shí),接口里的所有函數(shù)必須全部被覆蓋。例如:

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);

}

}

輸出結(jié)果:

30

1000

當(dāng)想繼承多個(gè)類(lèi)時(shí),開(kāi)發(fā)程序不允許,報(bào)錯(cuò)。這樣就要用到接口。因?yàn)榻涌谠试S多重繼承(,),而類(lèi)不允許。所以就要用到接口。

Java里面的接口

Java里面由于不允許多重繼承,所以如果要實(shí)現(xiàn)多個(gè)類(lèi)的功能,則可以通過(guò)實(shí)現(xiàn)多個(gè)接口來(lái)實(shí)現(xiàn)。

Java接口和Java抽象類(lèi)代表的就是抽象類(lèi)型,就是我們需要提出的抽象層的具體表現(xiàn)。OOP面向?qū)ο蟮木幊蹋绻岣叱绦虻膹?fù)用率,增加程序的可維護(hù)性,可擴(kuò)展性,就必須是面向接口的編程,面向抽象的編程,正確地使用接口、抽象類(lèi)這些太有用的抽象類(lèi)型做為你結(jié)構(gòu)層次上的頂層。

Java接口和Java抽象類(lèi)有太多相似的地方,又有太多特別的地方,究竟在什么地方,才是它們的最佳位置呢?把它們比較一下,你就可以發(fā)現(xiàn)了。

1、Java接口和Java抽象類(lèi)最大的一個(gè)區(qū)別,就在于Java抽象類(lèi)可以提供某些方法的部分實(shí)現(xiàn),而Java接口不可以,這大概就是Java抽象類(lèi)唯一的優(yōu)點(diǎn)吧,但這個(gè)優(yōu)點(diǎn)非常有用。如果向一個(gè)抽象類(lèi)里加入一個(gè)新的具體方法時(shí),那么它所有的子類(lèi)都一下子都得到了這個(gè)新方法,而Java接口做不到這一點(diǎn),如果向一個(gè)Java接口里加入一個(gè)新方法,所有實(shí)現(xiàn)這個(gè)接口的類(lèi)就無(wú)法成功通過(guò)編譯了,因?yàn)槟惚仨氉屆恳粋€(gè)類(lèi)都再實(shí)現(xiàn)這個(gè)方法才行,這顯然是Java接口的缺點(diǎn)。

2、一個(gè)抽象類(lèi)的實(shí)現(xiàn)只能由這個(gè)抽象類(lèi)的子類(lèi)給出,也就是說(shuō),這個(gè)實(shí)現(xiàn)處在抽象類(lèi)所定義出的繼承的等級(jí)結(jié)構(gòu)中,而由于Java語(yǔ)言的單繼承性,所以抽象類(lèi)作為類(lèi)型定義工具的效能大打折扣。在這一點(diǎn)上,Java接口的優(yōu)勢(shì)就出來(lái)了,任何一個(gè)實(shí)現(xiàn)了一個(gè)Java接口所規(guī)定的方法的類(lèi)都可以具有這個(gè)接口的類(lèi)型,而一個(gè)類(lèi)可以實(shí)現(xiàn)任意多個(gè)Java接口,從而這個(gè)類(lèi)就有了多種類(lèi)型。

3、從第2點(diǎn)不難看出,Java接口是定義混合類(lèi)型的理想工具,混合類(lèi)表明一個(gè)類(lèi)不僅僅具有某個(gè)主類(lèi)型的行為,而且具有其他的次要行為。

[編輯本段]PHP中的接口

?php

interface demoInterface{

public function doIt();//聲明方法

}

class hello implements demoInterface{

public function doIt(){

echo "實(shí)現(xiàn)接口中的方法";

}

}

$demo=new hello();

$demo-doIt();

?

[編輯本段]RAID卡接口

接口是指RAID卡支持的硬盤(pán)接口,目前主要有三種:IDE接口、SCSI接口和SATA接口。 IDE接口:

IDE的英文全稱(chēng)為“Integrated Drive Electronics”,即“電子集成驅(qū)動(dòng)器”,它的本意是指把“硬盤(pán)控制器”與“盤(pán)體”集成在一起的硬盤(pán)驅(qū)動(dòng)器。把盤(pán)體與控制器集成在一起的做法減少了硬盤(pán)接口的電纜數(shù)目與長(zhǎng)度,數(shù)據(jù)傳輸?shù)目煽啃缘玫搅嗽鰪?qiáng),硬盤(pán)制造起來(lái)變得更容易,因?yàn)橛脖P(pán)生產(chǎn)廠(chǎng)商不需要再擔(dān)心自己的硬盤(pán)是否與其它廠(chǎng)商生產(chǎn)的控制器兼容,對(duì)用戶(hù)而言,硬盤(pán)安裝起來(lái)也更為方便。IDE這一接口技術(shù)從誕生至今就一直在不斷發(fā)展,性能也不斷的提高,其擁有的價(jià)格低廉、兼容性強(qiáng)的特點(diǎn),為其造就了其它類(lèi)型硬盤(pán)無(wú)法替代的地位。

IDE代表著硬盤(pán)的一種類(lèi)型,但在實(shí)際的應(yīng)用中,人們也習(xí)慣用IDE來(lái)稱(chēng)呼最早出現(xiàn)IDE類(lèi)型硬盤(pán)ATA-1,這種類(lèi)型的接口隨著接口技術(shù)的發(fā)展已經(jīng)被淘汰了,而其后發(fā)展分支出更多類(lèi)型的硬盤(pán)接口,比如ATA、Ultra ATA、DMA、Ultra DMA等接口都屬于IDE硬盤(pán)。此外,由于IDE口屬于并行接口,因此為了和SATA口硬盤(pán)相區(qū)別,IDE口硬盤(pán)也叫PATA口硬盤(pán)。

SCSI接口:

SCSI的英文全稱(chēng)為“Small Computer System Interface”(小型計(jì)算機(jī)系統(tǒng)接口),是同IDE完全不同的接口,IDE接口是普通PC的標(biāo)準(zhǔn)接口,而SCSI并不是專(zhuān)門(mén)為硬盤(pán)設(shè)計(jì)的接口,是一種廣泛應(yīng)用于小型機(jī)上的高速數(shù)據(jù)傳輸技術(shù)。SCSI接口具有應(yīng)用范圍廣、多任務(wù)、帶寬大、CPU占用率低,以及支持熱插拔等優(yōu)點(diǎn),但較高的價(jià)格使得它很難如IDE硬盤(pán)般普及,因此SCSI硬盤(pán)主要應(yīng)用于中、高端服務(wù)器和高檔工作站中。SCSI硬盤(pán)和普通IDE硬盤(pán)相比有很多優(yōu)點(diǎn):接口速度快,并且由于主要用于服務(wù)器,因此硬盤(pán)本身的性能也比較高,硬盤(pán)轉(zhuǎn)速快,緩存容量大,CPU占用率低,擴(kuò)展性遠(yuǎn)優(yōu)于IDE硬盤(pán),并且支持熱插拔。

SATA接口:

使用SATA(Serial ATA)口的硬盤(pán)又叫串口硬盤(pán),是未來(lái)PC機(jī)硬盤(pán)的趨勢(shì)。2001年,由Intel、APT、Dell、IBM、希捷、邁拓這幾大廠(chǎng)商組成的Serial ATA委員會(huì)正式確立了Serial ATA 1.0規(guī)范,2002年,雖然串行ATA的相關(guān)設(shè)備還未正式上市,但Serial ATA委員會(huì)已搶先確立了Serial ATA 2.0規(guī)范。Serial ATA采用串行連接方式,串行ATA總線(xiàn)使用嵌入式時(shí)鐘信號(hào),具備了更強(qiáng)的糾錯(cuò)能力,與以往相比其最大的區(qū)別在于能對(duì)傳輸指令(不僅僅是數(shù)據(jù))進(jìn)行檢查,如果發(fā)現(xiàn)錯(cuò)誤會(huì)自動(dòng)矯正,這在很大程度上提高了數(shù)據(jù)傳輸?shù)目煽啃浴4薪涌谶€具有結(jié)構(gòu)簡(jiǎn)單、支持熱插拔的優(yōu)點(diǎn)。

串口硬盤(pán)是一種完全不同于并行ATA的新型硬盤(pán)接口類(lèi)型,由于采用串行方式傳輸數(shù)據(jù)而知名。相對(duì)于并行ATA來(lái)說(shuō),就具有非常多的優(yōu)勢(shì)。首先,Serial ATA以連續(xù)串行的方式傳送數(shù)據(jù),一次只會(huì)傳送1位數(shù)據(jù)。這樣能減少SATA接口的針腳數(shù)目,使連接電纜數(shù)目變少,效率也會(huì)更高。實(shí)際上,Serial ATA 僅用四支針腳就能完成所有的工作,分別用于連接電纜、連接地線(xiàn)、發(fā)送數(shù)據(jù)和接收數(shù)據(jù),同時(shí)這樣的架構(gòu)還能降低系統(tǒng)能耗和減小系統(tǒng)復(fù)雜性。其次,Serial ATA的起點(diǎn)更高、發(fā)展?jié)摿Ω螅琒erial ATA 1.0定義的數(shù)據(jù)傳輸率可達(dá)150MB/s,這比目前最新的并行ATA(即ATA/133)所能達(dá)到133MB/s的最高數(shù)據(jù)傳輸率還高,而在Serial ATA 2.0的數(shù)據(jù)傳輸率將達(dá)到300MB/s,最終SATA將實(shí)現(xiàn)600MB/s的最高數(shù)據(jù)傳輸率。

上圖為支持Serial-ATA技術(shù)的標(biāo)志

上圖為主板上的Serial-ATA接口

RAID技術(shù)問(wèn)世時(shí)是基于SCSI接口,因其成本高,因此主要面向服務(wù)器等高端應(yīng)用。普通用戶(hù)根本無(wú)緣擁有RAID。隨著計(jì)算機(jī)的大眾化,由此帶動(dòng)PC計(jì)算機(jī)的空前繁榮。相應(yīng)的,在市場(chǎng)的帶動(dòng)下,用于PC計(jì)算機(jī)的IDE接口設(shè)備價(jià)格大幅降低,同時(shí)性能大幅提高。鑒于此,RAID技術(shù)開(kāi)始移植到IDE 接口上,推出了基于IDE接口的RAID應(yīng)用,稱(chēng)為IDE RAID。而基于SCSI接口的RAID應(yīng)用則相應(yīng)稱(chēng)為SCSI RAID。與SCSI RAID相比,IDE RAID具有極低的價(jià)格,和一點(diǎn)也不遜色的性能表現(xiàn),相應(yīng)的,IDE RAID 解決方案就具有SCSI RAID無(wú)法比擬的高性?xún)r(jià)比。因此 IDE RAID自推出后,受到普通PC用戶(hù)和普通商業(yè)應(yīng)用的普遍歡迎。

當(dāng)然IDE RAID也有其缺點(diǎn),比如在CPU占用率和連接設(shè)備數(shù)量等方面就無(wú)法與SCSI RAID相比,同時(shí),IDE RAID目前為止還只支持RAID0、RAID1和RAID0+1,并且性能上也比SCSI RAID略遜一籌,因此高性能計(jì)算機(jī)應(yīng)用方面還是以SCSI RAID為主。SATA RAID是剛剛誕生的RAID方式,它與IDE RAID類(lèi)似,最大的優(yōu)點(diǎn)是低成本,其他方面也和IDE RAID接近。

新聞名稱(chēng):包含vb.net調(diào)用麥克風(fēng)的詞條
當(dāng)前網(wǎng)址:http://www.yijiale78.com/article4/docjdie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站網(wǎng)站內(nèi)鏈搜索引擎優(yōu)化網(wǎng)站維護(hù)商城網(wǎng)站軟件開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)