抽象類:只要乙個類中有抽象類,則這個類就被稱為抽象類,抽象類中可以沒有抽象方法
介面:乙個類中全部為抽象方法,則這個類就被稱為介面
具體的區別如下:
抽象類介面
關鍵字abstract
inte***ce
成員變數
可包含任意合法成員變數(包括各種訪問級別的類成員變數和例項成員變數)
只能包含公開靜態常量(預設由public static final修飾)
構造方法
有構造方法
無構造方法
方法可包含任意合法方法(包括各種訪問級別的非抽象類方法和非抽象例項方法,也包含除private外的非靜態抽象方法)
jdk7及其以下版本jdk只能包含公開且抽象的方法(預設由public abstract修飾),而jdk8開始可以包含default、static修飾的非抽象方法。
如何實現抽象方法
通過自定義類繼承抽象類的方式實現抽象類的抽象方法
通過自定義類implements介面實現介面中的抽象方法,定義類可以implements多個介面
是否存在多繼承
乙個抽象類只能繼承乙個抽象或非抽象類
乙個介面可以繼承多個介面
詳述抽象抽象類與介面的區別
抽象類 抽象類 用abstract修飾的類是抽象類 抽象方法 用abstract修飾的方法是抽象方法,方法只有宣告沒有方法體 特點 注意 abstract不能與final private static一起使用 介面介面 是抽象方法的集合,用inte ce修飾 特點 抽象類與介面的區別 區別抽象類 介...
詳述抽象類與介面的區別
目錄 一 概念的區別 二 繼承的區別 三 構造方法的區別 四 修飾符的區別 五 例項化的區別 抽象類 抽象類是從一些類中抽取出它們共有的屬性 介面 主要是對類的行為的抽象,介面也可以有變數和方法,但是變數以及方法的修飾符都必須分別是public static final 抽象類 子類使用extend...
java抽象類與介面的區別抽象類與介面的特性是什麼
介面和抽象類的概念不一樣。介面是對動作的抽象,抽象類是對根源的抽象。抽象類表示的是個物件,什麼物件。介面表示的是物件的功能,能做什麼。舉個例子 男人 物件 和女人 物件 這兩個類 物件 他們可以抽象為人。公貓和母貓可以抽象為貓。人可以吃飯,可以睡覺,貓呢也可以吃飯和睡覺,那麼這個 吃飯 睡覺 就是某...