前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >互联网大厂面试经典问题:什么是继承 ?JavaScrpt中如何通过原型链实现继承 ?

互联网大厂面试经典问题:什么是继承 ?JavaScrpt中如何通过原型链实现继承 ?

原创
作者头像
艾编程
发布2022-04-02 21:29:24
2500
发布2022-04-02 21:29:24
举报
文章被收录于专栏:艾编程艾编程

有同学提问,能不能讲讲继承,这一篇笔记就来深入说说继承相关的内容,包含了什么是继承,JavaScript如何实现继承,通过原型链实现继承。 什么是继承 ?JavaScript中如何通过原型链实现继承 ?

以下我们先使用UML类图来表示类的属性和方法,用以举例说明

UML(统一建模语言)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。

UML是面向对象设计的建模工具,独立于任何具体程序设计语言。

以下两个无关的类:我们发现,People类 和 Car类 没有任何
People类和Student类的关系:我们发现,Student是一种 People
  • People类拥有的属性和方法Student类都有,Student类还扩展了一些属性和方法
  • Student “是一种” People,两类之间是 “is a kind of ”关系
  • 这就是继承关系:Student 类继承自People类

1、什么是继承

继承描述了两个类之间的 “ is a kind of ” 关系比如:学生“是一种”人,所以人类和学生类之间就构成继承关系People是 "父类"(或 "超类"、”基类“)Student是 ”子类“(或 ”派生类“)子类丰富了父类,让类描述得更具体、更细化。

在UML图示中使用白色的空心箭头来表示类和类之间的继承关系箭头的方向是由子类指向父类这样的表达方式就是继承

更多的继承关系举例

父类

子类

People

Student、Teacher

Vehicle

Car、Truck、Motorcycle

Appliance

Television、Refrigerator

Publication

Book、Magazine

2、JavaScript中如何实现继承?

  • 实现继承的关键在于:子类必须拥有父类的全部属性和方法,同时子类还应该能定义自己特有的属性和方法
  • 使用JavaScript特有的原型链特性来实现继承,是普遍的做法
  • 在今后学习ES6时,将介绍新的实现继承的方法

3、通过原型链实现继承

当然还有在ES6中如何实现继承,后续有需求了再分享 !大家也可以踊跃提问哈 ,一起加油 ^_^我们学的不仅是技术,更是梦想 !因为爱,所以认真 。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、什么是继承
  • 2、JavaScript中如何实现继承?
  • 3、通过原型链实现继承
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档