抽象類實現介面有什麼意義?

2021-10-09 09:04:25 字數 588 閱讀 4174

抽象類當然能夠實現介面,意義如下:一般來說我們使用普通類來實現介面,這個普通類就必須實現介面

中所有的方法,這樣的結果就是普通類中就需要實現多餘的方法,造成**冗餘。但是如果我們使用的是

抽象類來實現介面,那麼就可以只實現介面中的部分方法,並且當其他類繼承這個抽象類時,仍然可以實

現介面中有但抽象類並未實現的方法。

如以下**,抽象類只是實現了介面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...