关于第四章的继承部分的琐碎知识点记录

虚方法

父类方法添加virtual关键词,子类方法使用override关键词,可以重写父类方法。但是,构造方法不行

class Father
{
    public virtual string Name()
    {
        return "father";
    }
}

class Son : Father
{
    public override string Name()
    {
        return "son";
    }
}

隐藏方法

派生类可以有和父类相同的方法,但是不属于重写。一般没事,编译器会警告。

为了去除编译器警告信息,可以添加new 关键词。

base关键词

派生类可以使用base.X()来调用基类的任何方法

抽象类和抽象方法

使用abstract关键词,创建抽象类。

其中,抽象类中的方法是可以是抽象方法,也可以不是。

封装类和封装方法

使用sealed关键词,类似于java的final

对于类不可以被继承,方法不可以被重写

接口

接口 抽象类
一点都没有实现 可以实现部分,也可以不实现

接口不能有构造函数,也不可以有字段,更加不能包含运算符重载