java中抽象類與介面的區別

2021-07-24 03:44:57 字數 892 閱讀 5685

抽象類與介面的區別:

1. 抽象類中可以含有普通方法和變數,而介面中只能含有抽象方法(public abstract修飾)和常量(public final static修飾),不能含有任何實現了的方法。

2. 抽象類中由構造器,而介面中沒有構造器。

3. 抽象類只能是單繼承,多實現。而介面是多繼承其他介面,但是不能實現介面,也不能繼承其他類。

4. 抽象類中也可以含有final的方法和靜態方法,但是介面不可以。

5. 抽象類繼承與object,介面不能繼承於object.

/**

* 抽象類與介面比較:

* 抽象類:可以有構造方法,普通方法,final修飾的方法,靜態方法,普通變數,靜態成員變數,抽象類是單繼承

* 介面:介面中只能有抽象方法,修飾符是public abstract,不能含有被實現的方法。只能有常量,修飾符只能是public static final

* 介面是多繼承(實現)

* @author hezhi

* */

public abstract class abstractdemo01

//靜態方法

public static void test()

//final方法:不可被重寫

public final void foo()

public abstract void sayhey() ; //抽象方法沒有方法體

}

/**

* 介面修飾符只能是public和abstract

* @author hezhi

* */

public inte***ce inte***ce

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

介面和抽象類的概念不一樣。介面是對動作的抽象,抽象類是對根源的抽象。抽象類表示的是個物件,什麼物件。介面表示的是物件的功能,能做什麼。舉個例子 男人 物件 和女人 物件 這兩個類 物件 他們可以抽象為人。公貓和母貓可以抽象為貓。人可以吃飯,可以睡覺,貓呢也可以吃飯和睡覺,那麼這個 吃飯 睡覺 就是某...

java中抽象類與介面的區別

抽象類和介面都包含類可以由子類繼承實現的成員,但抽象類是對根源的抽象,而介面上是對動作的抽象。抽象類的功能要遠超過介面,那為什麼還要使用介面呢?這主要是由於定義抽象類的代價高 因為每個類只能繼承乙個類,在這個類中,必須繼承或者編寫出其子類的所有共性 因此,雖然介面在功能上會弱化很多,但它只是針對乙個...

Java中抽象類與介面的區別

抽象類 定義方法 abstract class 名稱 組成 建構函式,普通方法,靜態方法,全域性常量,成員,static方法 許可權 可以使用各種許可權定義 子類使用 使用extends繼承乙個抽象類 兩者關係 抽象類可以實現若干介面 介面 定義方法 inte ce 介面名稱 組成 抽象方法,全域性...