歡迎來到培訓(xùn)無憂網(wǎng)!

全國切換

咨詢熱線 400-001-5729

位置:培訓(xùn)無憂網(wǎng) > 新聞資訊 > 電腦/IT > java培訓(xùn) >  java接口和抽象類的主要區(qū)別

java接口和抽象類的主要區(qū)別

來源:培訓(xùn)無憂網(wǎng) 發(fā)布人:裴裴

2022-12-12 21:12:27|已瀏覽:106次

java接口和抽象類的主要區(qū)別

java接口和抽象類的主要區(qū)別

java接口和抽象類的主要區(qū)別:java接口和抽象類的主要區(qū)別包括接口使用關(guān)鍵字interface來定義,抽象類使用關(guān)鍵字abstract來定義;接口使用implements關(guān)鍵字定義其具體實(shí)現(xiàn),java培訓(xùn)抽象類使用extends關(guān)鍵字實(shí)現(xiàn)繼承。除以上兩點(diǎn)以外還包括子類擴(kuò)展的數(shù)量不同、屬性訪問控制符不同等等。

java接口和抽象類的主要區(qū)別:

1、定義關(guān)鍵字不同

接口使用關(guān)鍵字interface來定義,抽象類使用關(guān)鍵字abstract來定義。

3、繼承或?qū)崿F(xiàn)的關(guān)鍵字不同

接口使用implements關(guān)鍵字定義其具體實(shí)現(xiàn),java培訓(xùn)抽象類使用extends關(guān)鍵字實(shí)現(xiàn)繼承。

3、子類擴(kuò)展的數(shù)量不同

接口的實(shí)現(xiàn)類可以有多個(gè),而抽象類的子類,只能繼承一個(gè)抽象類,在Java語言中,一個(gè)類只能繼承一個(gè)父類(單繼承),但可以實(shí)現(xiàn)多個(gè)接口。

4、屬性訪問控制符不同

接口中屬性的訪問控制符只能是public,接口中的屬性默認(rèn)是public static final修飾的。抽象類中的屬性訪問控制符無限制,可為任意控制符。

5、方法控制符不同

接口中方法的默認(rèn)控制符是public,并且不能定義為其他控制符,抽象類中的方法控制符無限制,其中抽象方法不能使用private修飾。

6、方法實(shí)現(xiàn)不同

接口中普通方法不能有具體的方法實(shí)現(xiàn),在JDK 8之后static和default方法必須有方法實(shí)現(xiàn),static或default方法如果沒有方法實(shí)現(xiàn)就會(huì)報(bào)錯(cuò),而普通方法如果有方法實(shí)現(xiàn)就會(huì)報(bào)錯(cuò)。

抽象類中普通方法可以有方法實(shí)現(xiàn),抽象方法不能有方法實(shí)現(xiàn),抽象類中的普通方法如果沒有方法實(shí)現(xiàn)就會(huì)報(bào)錯(cuò),而抽象方法如果有方法實(shí)現(xiàn)則會(huì)報(bào)錯(cuò)。

7、靜態(tài)代碼塊使用不同

接口中不能使用靜態(tài)代碼塊,抽象類中可以使用靜態(tài)代碼塊。

      注:尊重原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處和鏈接 http://m.elsolbar.com/news-id-75012.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請(qǐng)自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請(qǐng)關(guān)注java培訓(xùn)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請(qǐng)?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會(huì)一對(duì)一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機(jī):

  • 地區(qū):

  • 想學(xué)什么:

  • 培訓(xùn)無憂網(wǎng)
免 費(fèi) 申 請(qǐng) 試 聽
提交申請(qǐng),《培訓(xùn)無憂網(wǎng)》課程顧問老師會(huì)一對(duì)一幫助你規(guī)劃更適合你的專業(yè)課程!