Java接口和抽象類的區別

Java提供和支持創建抽象類和接口。

它們的實現有共同點,不同點在于:

  1. 接口中所有的方法隱含的都是抽象的。而抽象類則可以同時包含抽象和非抽象的方法。

  2. 類可以實現很多個接口,但是只能繼承一個抽象類,接口可以有多個父接口。

  3. 類可以不實現抽象類和接口聲明的所有方法,當然,在這種情況下,類也必須得聲明成是抽象的。

  4. 抽象類可以在不提供接口方法實現的情況下實現接口。

  5. Java接口中聲明的變量默認都是final的。抽象類可以包含非final的變量。

  6. Java接口中的成員函數默認是public的。抽象類的成員函數可以是private,protected或者是public。

  7. 接口是絕對抽象的,不可以被實例化。抽象類也不可以被實例化,但是,如果它包含main方法的話是可以被調用的。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 接口interface和抽象類abstract class的概念不一樣。接口是對動作的抽象,抽象類是對根源的抽象。...
    BestFei閱讀 476評論 0 2
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,765評論 18 399
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • 文/洋氣雜貨店 01. 以前喜歡看《甄嬛傳》,宮廷女人之間的明爭暗斗讓人心驚膽戰,有的靠著暗算害死了一個又一個競爭...
    洋氣雜貨店閱讀 5,082評論 68 252
  • 志燮,好久不見!時間是一只藏在黑暗中溫柔的手,一出神一恍惚之間,斗轉星移,自上海FM一別,不知不覺又兩年過去了。 ...
    卿云lusindaen閱讀 486評論 0 2