如何理解JavaScript类继承?

在JavaScript中,有时我们需要扩展一个类,以便在现有功能的基础上添加新的功能。这篇文章将带你了解如何扩展一个JavaScript类,适合初学者快速入门。

JavaScript类的继承

要扩展一个JavaScript类,我们可以使用extends关键字和类语法。以下是一个简单的例子:

go 复制代码
class Person {
  sayHello() {
    console.log('hello');
  }
  walk() {
    console.log('I am walking!');
  }
}

class Student extends Person {
  sayGoodBye() {
    console.log('goodbye');
  }
  sayHello() {
    console.log('Hi, I am a student');
  }
}

const student1 = new Student();
student1.sayHello(); // 输出:Hi, I am a student
student1.walk();     // 输出:I am walking!
student1.sayGoodBye(); // 输出:goodbye

console.log(student1 instanceof Person); // 输出:true
console.log(student1 instanceof Student); // 输出:true

在这个例子中,我们定义了一个Person类,它有两个方法:sayHellowalk。然后,我们定义了一个Student类,通过extends关键字使其继承自Person类。

继承的细节

  1. 父类方法继承: Student类自动继承了Person类的所有方法,如walk方法。

  2. 子类方法重写: Student类可以重写父类的方法,例如它重写了sayHello方法,使其输出不同的内容。

  3. 添加子类方法: Student类可以有自己的方法,如sayGoodBye

通过使用extends关键字,Student类不仅拥有自己定义的方法,还继承了Person类的方法,实现了代码复用和功能扩展。

实例化和方法调用

通过new关键字,我们可以创建一个Student类的实例student1。然后,我们可以调用student1的所有方法,包括继承自Person类的方法和自己定义的方法。

instanceof操作符

instanceof操作符用于检测一个实例是否属于某个类。在这个例子中,student1不仅是Student类的实例,也是Person类的实例,因为Student继承了Person

结束

扩展JavaScript类的方式非常简单,只需要使用extends关键字和类语法。通过继承,我们可以轻松复用代码和扩展功能,使我们的代码更加简洁和高效。

希望这个简单的例子能帮助你理解JavaScript类的继承。如果你有任何疑问或想了解更多,欢迎在评论区留言与我互动!

相关推荐
快起来别睡了2 分钟前
React 是如何用 JSX 写页面,却能被浏览器执行的?——Babel 的魔法解析
前端
喧星Aries13 分钟前
进程调度的时机,切换与过程方式(操作系统OS)
java·服务器·前端·操作系统·进程调度
海底火旺15 分钟前
useState:批处理与函数式更新
前端·react.js·面试
s1533516 分钟前
C++STL-deque
开发语言·c++
一块plus16 分钟前
一门原本只是“试试水”的课程,没想到炸出了一群真诚的开发者
javascript·面试·github
亿万托福17 分钟前
数字世界的构筑之艺:前端技术栈的浅描与远瞻
前端
用户408128120038118 分钟前
JWT 和 token 区别
前端
yvvvy18 分钟前
🚀React + Vite 实战:打造智能单词学习应用
javascript
盏茶作酒2919 分钟前
打造自己的组件库(三)打包及发布
前端·vue.js
单休好_好就好在比双休少一天19 分钟前
Vite打包从12.17M -> 7.95M,速度提升≈51.85%
前端·javascript