Typescript学习笔记(6)-继承学习(1)
2.继承
1.继承的基本使用
es6
中有继承
,通过extends
关键字定义,ts
也支持,我们也可以通过extends
关键字实现继承,使用继承后,子类会拥有父类所有的方法和属性
例子
使用继承
之前
(function (){ |
- 由上述的代码,我们可以发现,无论是狗的类还是猫的类,他们基本都有一样的属性和相似的方法,但是我们却创建了两个类,这样代码就会显得非常的冗余,此时我们就可以使用
继承
来提高代码的执行效率
使用继承
之后
(function (){ |
结果展示:
Super
关键字
super
代表的就是当前的父类
在类的方法中
- 在类的方法中
super
直接表示父类 - 我们可以通过
super.父类的方法
调用父类的方法
代码展示:
(function () { |
结果展示:
在构造函数
中(比较常用)
- 在构造函数中
super()
表示父类的构造函数 - 如果在子类中写了构造函数,就必须调用父类的构造函数
- 原因:
- 我们都知道,子类在继承父类的时候是存在有函数重写这一说法的,也就是说,当我们在子类当中调用构造函数的时候就会覆盖掉我们从父类当中继承过来的构造函数,父类的构造函数不执行,这时的子类就不能从父类中继承属性或方法了,因此我们需要重新调用一下父类的构造函数,也就是重新调用一次super(父类中内置的属性)来重新激活父类的继承
- 原因:
代码展示:
(function () { |
结果展示:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库