typescript(Day3)静态属性、静态方法、多态、抽象类

typescript(Day3)静态属性、静态方法、多态、抽象类

1. 静态属性和静态方法

静态属性和静态方法并不是发展到typescript的时候js才有的,在es5的时候我们也可以是使用构造函数的方式来定义静态属性和静态方法的。typescript的静态属性和静态方法和es6的基本也是一致

  • es5 时期静态属性与静态方法
    在这里插入图片描述
  • typescript的静态属性与静态方法
    在这里插入图片描述
总结:
  • 静态属性和静态方法是不需要通过new实例就可以直接调用的属性和方法
  • 静态方法只能获取到静态属性,是没有办法获取到实例的属性或方法的
  • 在typescript中,使用static关键字来表示静态属性和方法
2. 多态、静态类

多态是面向对象的一个另一个重要特征。

  • 多态概念:父类定义一个方法不去实现、让继承它的子类去实现,每一个子类有不同的表现
  • 抽象类:抽象类也是一种多态形式,但是抽象类的要求是更加的严格的,抽象类要求如下:
    1 使用 abstract 关键字来定义抽象类,抽象方法
    2. 抽象类是只能是一个基类,也可以理解成是模板,是不能够实例化的
    3. 抽象类的抽象方法也是一样不会有具体的体现,是给子类去实现
    4. 抽象类必须至少需要有一个抽象方法,继承抽象类的子类一定要重写抽象方法
  • 多态
    在这里插入图片描述
  • 抽象类
    在这里插入图片描述
总结:多态和抽象的概念还是比较重要的,也比较基础,有其他面向对象预言基础和es6的基础其实不会难。