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 类的属性和方法,同时还可以定义自己的属性和方法。

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

相关推荐
鱼樱前端2 分钟前
别再"学工具"了,先搭你的 AI 工作流
前端·ai编程·前端工程化
凤山老林2 小时前
从美团全栈化看 AI 冲击:前端转全栈,是自救还是必然
前端·人工智能·状态模式
777VG9 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
mayaairi10 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC10 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
阳光是sunny10 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
kyriewen10 小时前
我用了三周Claude Code Skills——总结出5条铁律,第3条最反直觉
前端·ai编程·claude
阳光是sunny10 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
格尔曼Noah11 小时前
Safari浏览器中如何只允许指定网站下载
前端·safari
用户0595401744612 小时前
用了3年Redis,才发现我一直没搞懂缓存一致性测试
前端·css