抽象類當然能夠實現介面,意義如下:一般來說我們使用普通類來實現介面,這個普通類就必須實現介面
中所有的方法,這樣的結果就是普通類中就需要實現多餘的方法,造成**冗餘。但是如果我們使用的是
抽象類來實現介面,那麼就可以只實現介面中的部分方法,並且當其他類繼承這個抽象類時,仍然可以實
現介面中有但抽象類並未實現的方法。
如以下**,抽象類只是實現了介面a中的方法a,方法b,但是當類c繼承抽象類b時,可以直接實現介面
a中的c方法,有一點需要注意的是,類c中的方法a,方法b都是呼叫的父類b的方法a,方法b,不是直接
實現的介面的方法a,和方法b。
/**
*介面*/
inte***ce a
/***抽象類
*/abstract class b implements a
public void b(){}
}/**
* 具體實現類
*/public class c extends b
public void b(){}
public void c(){}
}
(十五)抽象類與介面有什麼異同
抽象類和介面都是支援抽象類定義的兩種機制 一 抽象類 包含抽象方法的類,必須宣告為抽象類,抽象類中可以包含非抽象方法 抽象可以是抽象方法 抽象類,但不能是抽象屬性 抽象類在使用的過程中不能被例項化,但是可以建立乙個物件使其指向子類的乙個例項 這已經很熟悉了,person child new chil...
抽象類和介面有什麼區別
含有 abstract 修飾符的 class 即為抽象類,abstract 類不能建立的例項物件。含有 abstract 方法的類必須定義為抽象類,抽象類中的方法不必是抽象的。抽象類中定義抽象方法必須在具體子類中實現,所以,不能有抽象構造方法或抽象靜 態方法。如果的子類沒有實現抽象父類中的所有抽象方...
抽象類和介面有什麼區別?
抽象類中可以有普通成員變數。介面中沒有普通成員變數。抽象類和介面中都可以包含靜態成員變數,抽象類中的靜態成員變數的訪問型別可以任意。但介面中定義的變數只能是public static final型別,並且預設即為public static final型別。抽象類中的抽象方法的訪問型別可以是publi...