java接口和抽象類的主要區(qū)別
java接口和抽象類的主要區(qū)別:java接口和抽象類的主要區(qū)別包括接口使用關鍵字interface來定義,抽象類使用關鍵字abstract來定義;接口使用implements關鍵字定義其具體實現,java培訓抽象類使用extends關鍵字實現繼承。除以上兩點以外還包括子類擴展的數量不同、屬性訪問控制符不同等等。
java接口和抽象類的主要區(qū)別:
1、定義關鍵字不同
接口使用關鍵字interface來定義,抽象類使用關鍵字abstract來定義。
3、繼承或實現的關鍵字不同
接口使用implements關鍵字定義其具體實現,java培訓抽象類使用extends關鍵字實現繼承。
3、子類擴展的數量不同
接口的實現類可以有多個,而抽象類的子類,只能繼承一個抽象類,在Java語言中,一個類只能繼承一個父類(單繼承),但可以實現多個接口。
4、屬性訪問控制符不同
接口中屬性的訪問控制符只能是public,接口中的屬性默認是public static final修飾的。抽象類中的屬性訪問控制符無限制,可為任意控制符。
5、方法控制符不同
接口中方法的默認控制符是public,并且不能定義為其他控制符,抽象類中的方法控制符無限制,其中抽象方法不能使用private修飾。
6、方法實現不同
接口中普通方法不能有具體的方法實現,在JDK 8之后static和default方法必須有方法實現,static或default方法如果沒有方法實現就會報錯,而普通方法如果有方法實現就會報錯。
抽象類中普通方法可以有方法實現,抽象方法不能有方法實現,抽象類中的普通方法如果沒有方法實現就會報錯,而抽象方法如果有方法實現則會報錯。
7、靜態(tài)代碼塊使用不同
接口中不能使用靜態(tài)代碼塊,抽象類中可以使用靜態(tài)代碼塊。
想了解更多相關資訊請關注java培訓頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注賦能網了解更多:4008-569-579
本文鏈接:
本文章“java接口和抽象類的主要區(qū)別”已幫助 59 人
免責聲明:本信息由用戶發(fā)布,本站不承擔本信息引起的任何交易及知識產權侵權的法律責任!
本文由賦能網 整理發(fā)布。了解更多培訓機構》培訓課程》學習資訊》課程優(yōu)惠》課程開班》學校地址等機構信息,可以留下您的聯系方式,讓課程老師跟你詳細解答:
咨詢熱線:4008-569-579