如何理解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类的继承。如果你有任何疑问或想了解更多,欢迎在评论区留言与我互动!

相关推荐
碧海蓝天20229 小时前
C++法则24:在标准 C++ 中,没有任何可移植的方式判断指针 T* pt 指向的内存位置是否已经 构造了对象,程序员必须手动跟踪哪些元素已构造。
java·开发语言·c++
lichenyang4539 小时前
鸿蒙 Web 容器(三):H5 怎么「调」到 ArkTS?
前端
代码不加糖9 小时前
Proxy能够监听到对象中的对象的引用吗?
开发语言·前端·javascript
光影少年9 小时前
react 原理与进阶
前端·react.js·掘金·金石计划
kyrie289 小时前
Vue 全套性能优化方案
前端
charlie1145141919 小时前
现代C++指南:Lambda,让我们用另一种方式持有函数
开发语言·c++
Sour9 小时前
PDF翻译卡住不动怎么办?扫描件、OCR 和大文件排查清单
前端·pdf·ocr
ziyitty9 小时前
MiMoCode 配置 “Unrecognized key: mcpServers“ 问题解决方案
前端·chrome
大家的林语冰9 小时前
连 Markdown 都不放过,Rust 在前端基建杀疯了,万物皆可“锈化“!
前端·javascript·markdown
参宿79 小时前
CSS 悬挂空白与选区溢出
前端·css