ES6如何声明一个类?类如何继承?

在 JavaScript 中,您可以使用关键字 class 来声明一个类。类是一种模板,用于创建对象的构造函数,其中包含了属性和方法。以下是声明一个类的基本语法:

javascript 复制代码
class ClassName {
  constructor() {
    // 构造函数,用于创建对象实例时初始化属性
    this.propertyName = value;
  }

  // 方法定义
  methodName() {
    // 方法体
  }
}

在上述示例中,ClassName 是类的名称,constructor 是类的构造函数,用于初始化类的属性。您可以在构造函数中为对象添加属性和进行初始化。

要创建类的实例,可以使用 new 关键字,如下所示:

javascript 复制代码
const instance = new ClassName();

继承是面向对象编程中的一个重要概念,它允许一个类继承另一个类的属性和方法。在 JavaScript 中,您可以使用 extends 关键字来创建类的继承关系。以下是一个简单的继承示例:

javascript 复制代码
class Parent {
  constructor(name) {
    this.name = name;
  }

  sayHello() {
    console.log(`Hello, ${this.name}!`);
  }
}

class Child extends Parent {
  constructor(name, age) {
    super(name); // 调用父类的构造函数
    this.age = age;
  }

  sayAge() {
    console.log(`${this.name} is ${this.age} years old.`);
  }
}

const child = new Child('Alice', 5);
child.sayHello(); // 输出:Hello, Alice!
child.sayAge();   // 输出:Alice is 5 years old.

在上面的示例中,Child 类继承了 Parent 类的属性和方法。使用 super 关键字调用父类的构造函数以初始化父类的属性。这使得 Child 类可以访问 Parent 类的属性和方法,同时还可以定义自己的属性和方法。

继承是一种强大的机制,允许您建立类之间的关系,并在子类中扩展或修改父类的行为。这在创建复杂的对象模型和应用程序中非常有用。

相关推荐
涛涛ing18 分钟前
狂揽2.4万星标:一行命令,AI会自己找技能了
前端
Csvn19 分钟前
🚨 JSON.stringify 的 6 个隐藏坑:为什么你的数据序列化后"消失"了?
前端
aircrushin25 分钟前
Claude 5 之后,上下文工程该做减法了
前端·人工智能·后端
huabuyu27 分钟前
CLS 自动化归因及自愈:让系统自己定位根因、修复并验证
前端·javascript
C++、Java和Python的菜鸟27 分钟前
第13章 前端Web实战(Tlias案例)
前端·javascript·vue.js
用户69190268133928 分钟前
React 组件间通信全解析:从父子到跨级
前端·javascript
echoVic29 分钟前
同一个 bug,我在 WebGPU 渲染器里犯了两轮:一帧内多次写同一块 buffer
前端·webgl·图形学
胡萝卜术31 分钟前
数据主权与渲染防线:从受控组件到性能优化的完整图景
前端·javascript·面试
DFT计算杂谈32 分钟前
FeSe超薄膜在CaF2衬底上的电子结构DFT研究
java·服务器·前端
BreezeJiang35 分钟前
父组件一更新,子组件就必须跟着更新吗?从 memo 走到 useCallback
前端·javascript