java抽象類與介面的區別抽象類與介面的特性是什麼

2021-07-16 22:03:20 字數 686 閱讀 7220

介面和抽象類的概念不一樣。介面是對動作的抽象,抽象類是對根源的抽象。

抽象類表示的是個物件,什麼物件。介面表示的是物件的功能,能做什麼。

舉個例子:男人(物件)和女人(物件),這兩個類(物件)他們可以抽象為人。公貓和母貓可以抽象為貓。

人可以吃飯,可以睡覺,貓呢也可以吃飯和睡覺,那麼這個「吃飯」、「睡覺」就是某個特定的功能,我們可以把「吃飯」和「睡覺」定義成乙個介面中的兩個方法。

然後我們可讓人和貓去實現這個介面,即人可以吃飯睡覺貓也可以.但是我們卻不能找出乙個動物它既是人又是貓的,可見抽象類只能單繼承,而動物都可以吃飯和睡覺那麼介面是可以多繼承的。

區別列舉出來的話那就是:

1、乙個類只能進行單繼承其他類,但可以實現多個介面。

2、介面中所有的方法都是抽象的,在介面中定義的方法不能有實體,而在抽象類可以實現部分方法。

3、 介面裡面所有的方法的預設修飾符為public abstract,介面裡的成員變數預設的修飾符為pulbic static final。

4、介面和抽象類只能是抽象類實現介面。

抽象類的功能要比介面的多,但是,定義抽象類的代價高。因為高階語言來說(從實際設計上來說也是)每個類只能繼承乙個類。在這個類中,你必須繼承或編寫出其所有子類的

所有共性。雖然介面在功能上會弱化許多,但是它只是針對乙個動作的描述。而且你可以在乙個類中同時實現多個介面。在設計階段會降低難度的。

java抽象類與介面的區別

含有abstract修飾符的class 即為抽象類,abstract類不能建立例項物件,含有abstract的方法的類必須定義為abstract class abstract class 裡的方法不必是抽象的,抽象類中定義抽象方法必須放在具體子類中實現,所以呀,不能有抽象的構造方法或抽象的靜態方法,...

JAVA抽象類與介面的區別

抽象類和介面的區別 抽象類是乙個模板,類的模板,而介面是乙個標準。序號區別點 抽象類介面1定義 包含抽象方法的類就是抽象類 抽象方法和全域性常量的集合2組成 構造方法,抽象方法,普通方法 常量和抽象方法 常量,變數3使用 子類繼承抽象類 extends 子類實現介面 implements 關鍵字 a...

詳述抽象抽象類與介面的區別

抽象類 抽象類 用abstract修飾的類是抽象類 抽象方法 用abstract修飾的方法是抽象方法,方法只有宣告沒有方法體 特點 注意 abstract不能與final private static一起使用 介面介面 是抽象方法的集合,用inte ce修飾 特點 抽象類與介面的區別 區別抽象類 介...