1.继承是面向对象很重要的一个特点,有了继承是面向对象非常大的简化。css样式继承
    ts会检查不同文件当中变量的名的重复
    当两个类的结构基本相同的时候:
    狗:名字、年龄、构造函数、叫的方法
    猫:名字、年龄、构造函数、叫的方法
    ……等等
    唯一不同的是,狗叫是汪汪汪,猫叫是喵喵喵
    这个时候,提取相同结构部分到公共区域,共享这一相同的部分。


    2.所以定义一个animal类:让狗和猫extends继承animal类
    animal:父类
    dog、cat:子类
    使用继承后,子类将会拥有父类所有的方法和属性
    通过继承,可以将多个类中共有的代码写在一个父类中,这样只需写一次即可让所有的子类都同时拥有父类的属性
    如果希望在子类中添加一些父类中没有的属性或方法直接在子类中加就行
    (不仅可以在父类当中的属性方法拿过来使用,而且还可以添加独有的属性和方法
    image.pngimage.pngimage.png


    3.ocp原则:开辟原则
    在写一个类,写代码的时候,我们要对扩展开发,对修改关闭(可以扩展,但不能修改)
    e.g.拿到一个类,里面只有3个功能,但是我们需要4个功能。这时候我就应该创建1个新类继承这个类,在新类当中添加给的类没有的第4个功能


    4.子类方法重写:希望子类对父类的方法进行重写(覆盖)
    如果在子类当中添加了和父类相同的方法,那么子类方法会覆盖父类的方法(但父类的方法是没被修改的)
    image.png image.png