首頁 > Java > Java基礎 > 主體

java中介面和抽象類別的區別

(*-*)浩
發布: 2019-11-11 09:12:33
原創
2871 人瀏覽過

java中介面和抽象類別的區別

抽象類別            (建議學習:java課程

抽象類別必須用abstract修飾,子類別必須實作抽象類別中的抽象方法,如果有未實現的,那麼子類別也必須用abstract 修飾。抽象類別預設的權限修飾符為 public,可以定義為 public 或 procted,如果定義為 private,那麼子類別則無法繼承。抽象類別不能建立物件

抽象類別和普通類別的區別

抽象類別必須用public、procted 修飾(如果為private修飾,那麼子類別則無法繼承,也就無法實現其抽象方法)。預設預設為 public

抽象類別無法建立物件

如果一個子類別繼承抽象類,那麼必須實作其所有的抽象方法。如果有未實作的抽象方法,那麼必須定義為abstract

介面

介面中的變數隱式的使用public static final 修飾,並且需要給予初始值。

方法隱含的使用 public abstract 修飾(並且只能是 public ,如果是 private,procted,那麼就編譯報錯)。

介面中的方法預設不能有具體的實作(JDK1.8開始可以有預設的實作)

介面和抽象類別的差異

抽象類別只能繼承一次,但是可以實作多個介面

介面和抽象類別必須實作其中所有的方法,在抽象類別中如果有未實作的抽象方法,那麼子類別也需要定義為抽象類別。抽象類別中可以有非抽象的方法

介面中的變數必須用public static final修飾,並且需要給予初始值。 所以實作類別不能重新定義,也不能改變其值。

介面中的方法預設是 public abstract,也只能是這個型別。 不能是 static,介面中的方法也不允許子類別覆寫,在抽象類別中允許有static 的方法

以上是java中介面和抽象類別的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!