继承方式及其优缺点?
时间:2025.11.20 09:07:42
阅读:3
原型链继承
优点:方法可以共享,不会有重复的属性副本。
缺点:原型上的属性被所有实例共享,可能导致数据不安全。
- --- --
----- - --
- --- --
--- - - ---- - -构造函数继承
优点:可以传递参数给子类构造函数,可以有私有属性和方法。
缺点:每个实例都有自己的属性副本,不支持方法共享。
- ---- -
--- - -----
-
----- - --- -
---------
--
- ---- -- -
------ ------ - -
--- - ----
-
--- - - ---- - -组合继承
结合了构造函数和原型链的优点,可以传递参数并且方法共享。
- ---- -
--- - -----
-
----- - --- -
---------
--
- ---- -- -
------ ------ - -
--- - ----
-
--- - --------- - -
----- - -- - -原型式继承
通过一个对象来创建另一个对象,新对象将拥有原型对象的所有属性和方法。
- ---- -
- --- --
--- - --
- - ----
-寄生式继承
类似于原型式继承,但是不修改原型对象,而是在新对象上直接添加属性和方法。
- ---- -
- ----- - ----- - -
------- - --- -
-------
--
- ------
-ES6 class语法糖
使用class关键字定义类,继承使用extends关键字。
----- ------ -
----------------- -
--------- - -----
-
--------- -
-----------------------
-
-
----- ----- ------- ------ -
----------------- ---- -
------------ -- -------
-------- - ----
-
-