1. 程式人生 > >面向對象 (三)抽象類和接口

面向對象 (三)抽象類和接口

trac bstr 報錯 clas abstract nbsp 繼承 默認 定義

一、抽象類

抽象類相當於一個提綱,用於表明對問題領域進行分析、設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象,然後對繼承抽象類的子類做出限制。

抽象類用關鍵詞 abstract 實現

//抽象類
public abstract class Chouxixnaglei
{
    public abstract int Fangfa();
}
//子類
public class Zilei
{
    //具象抽象類的方法
    public overrideint Fangfa()
    {
        return Zhi;
    }
}

抽象類作為父類,只能有一個。

抽象類方法只寫到方法名();後面的方法體不寫。

抽象方法引用時需要先在子類中具象出來才能使用,否則會報錯。

抽象類不可以實例化對象。

抽象方法只能存在於抽象類中。

抽象類中不是只能有抽象方法,也可以有普通方法和虛方法等。

抽象類中也可以有成員變量和屬性。

二、接口

接口是一個引用類型(class),通過接口可以實現多重繼承。

接口是一種約束形式,其中只包括成員定義,不包含成員實現的內容,就是接口中只有高度抽象化的內容,不能有具體的內容。

接口用 interface 關鍵詞實現,interface代替了class。

//抽象類
public abstract class Chouxixnaglei
{
    
public abstract int Fangfa(); } //接口 interface Jiekou { int Fangfa1(); } //子類 public class Zilei : Chouxianglei , Jiekou { //具象抽象類的方法 public overrideint Fangfa() { return Zhi; } //具象接口的方法 public int Fangfa1() { return Zhi1; } }

接口的繼承代碼是 子類:抽象類(父類) , 接口。

接口可以有多個。

接口中只允許存在public級別的方法,不能寫其他訪問修飾符。可以不寫,默認public。

接口中只能存在很抽象的方法。

接口也不允許實例化對象。

面向對象 (三)抽象類和接口