首页 > 代码库 > 面向对象 (三)抽象类和接口

面向对象 (三)抽象类和接口

一、抽象类

抽象类相当于一个提纲,用于表明对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象,然后对继承抽象类的子类做出限制。

抽象类用关键词 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。

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

接口也不允许实例化对象。

面向对象 (三)抽象类和接口