更新時(shí)間:2020-12-09 15:15:30 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1740次
接口(英文:Interface),在JAVA編程語(yǔ)言中是一個(gè)抽象類(lèi)型,是抽象方法的集合,接口通常以interface來(lái)聲明。一個(gè)類(lèi)通過(guò)繼承接口的方式,從而來(lái)繼承接口的抽象方法。
接口并不是類(lèi),編寫(xiě)接口的方式和類(lèi)很相似,但是它們屬于不同的概念。類(lèi)描述對(duì)象的屬性和方法。接口則包含類(lèi)要實(shí)現(xiàn)的方法。
除非實(shí)現(xiàn)接口的類(lèi)是抽象類(lèi),否則該類(lèi)要定義接口中的所有方法。
接口無(wú)法被實(shí)例化,但是可以被實(shí)現(xiàn)。一個(gè)實(shí)現(xiàn)接口的類(lèi),必須實(shí)現(xiàn)接口內(nèi)所描述的所有方法,否則就必須聲明為抽象類(lèi)。另外,在Java中,接口類(lèi)型可用來(lái)聲明一個(gè)變量,他們可以成為一個(gè)空指針,或是被綁定在一個(gè)以此接口實(shí)現(xiàn)的對(duì)象。
接口與類(lèi)相似點(diǎn):
一個(gè)接口可以有多個(gè)方法。
接口文件保存在.java結(jié)尾的文件中,文件名使用接口名。
接口的字節(jié)碼文件保存在.class結(jié)尾的文件中。
接口相應(yīng)的字節(jié)碼文件必須在與包名稱(chēng)相匹配的目錄結(jié)構(gòu)中。
接口與類(lèi)的區(qū)別:
接口不能用于實(shí)例化對(duì)象。
接口沒(méi)有構(gòu)造方法。
接口中所有的方法必須是抽象方法。
接口不能包含成員變量,除了static和final變量。
接口不是被類(lèi)繼承了,而是要被類(lèi)實(shí)現(xiàn)。
接口支持多繼承。
接口特性
接口中每一個(gè)方法也是隱式抽象的,接口中的方法會(huì)被隱式的指定為public abstract(只能是public abstract,其他修飾符都會(huì)報(bào)錯(cuò))。
接口中可以含有變量,但是接口中的變量會(huì)被隱式的指定為public static final變量(并且只能是public,用private修飾會(huì)報(bào)編譯錯(cuò)誤)。
接口中的方法是不能在接口中實(shí)現(xiàn)的,只能由實(shí)現(xiàn)接口的類(lèi)來(lái)實(shí)現(xiàn)接口中的方法。
抽象類(lèi)和接口的區(qū)別
1.抽象類(lèi)中的方法可以有方法體,就是能實(shí)現(xiàn)方法的具體功能,但是接口中的方法不行。
2.抽象類(lèi)中的成員變量可以是各種類(lèi)型的,而接口中的成員變量只能是public static final類(lèi)型的。
3.接口中不能含有靜態(tài)代碼塊以及靜態(tài)方法(用static修飾的方法),而抽象類(lèi)是可以有靜態(tài)代碼塊和靜態(tài)方法。
4.一個(gè)類(lèi)只能繼承一個(gè)抽象類(lèi),而一個(gè)類(lèi)卻可以實(shí)現(xiàn)多個(gè)接口。
以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java接口講解視頻,詳細(xì)入門(mén)教程”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€(xiàn)咨詢(xún),有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話(huà)與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743