前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ES6 子类对父类方法的重写

ES6 子类对父类方法的重写

原创
作者头像
堕落飞鸟
发布2023-05-23 09:43:50
5950
发布2023-05-23 09:43:50
举报
文章被收录于专栏:飞鸟的专栏

子类对父类方法的重写的概念

子类对父类方法的重写是指在子类中定义与父类同名的方法,并使用子类的实现来替换父类的方法。当子类调用该方法时,将执行子类的实现而不是父类的实现。这允许子类根据自身的需求来修改或扩展父类的行为。

语法

ES6中子类对父类方法的重写的语法非常简单。在子类中,定义与父类同名的方法,并提供子类自己的实现。当子类调用该方法时,将执行子类的实现。

示例代码如下所示:

代码语言:javascript
复制
class ParentClass {
  methodName() {
    // 父类方法的实现
  }
}

class ChildClass extends ParentClass {
  methodName() {
    // 子类方法的实现,替换了父类的方法实现
  }
}

在上述代码中,ChildClass继承自ParentClass,并重写了父类的methodName()方法。当我们创建ChildClass的实例并调用methodName()时,将执行子类的方法实现。

示例

让我们通过示例来理解子类对父类方法的重写。

代码语言:javascript
复制
class Shape {
  calculateArea() {
    console.log('Calculating area of the shape...');
  }
}

class Circle extends Shape {
  calculateArea() {
    const radius = 5;
    const area = Math.PI * radius * radius;
    console.log(`Area of the circle: ${area}`);
  }
}

const circle = new Circle();
circle.calculateArea(); // 输出:Area of the circle: 78.53981633974483

在上述示例中,我们定义了一个Shape类,它有一个方法calculateArea()用于计算形状的面积。然后,我们定义了一个Circle类,它继承自Shape类,并重写了calculateArea()方法。

Circle类的calculateArea()方法中,我们使用固定的半径值来计算圆的面积,并输出结果。当我们创建Circle类的实例并调用calculateArea()方法时,将执行子类Circle的方法实现,输出圆的面积。

通过重写父类的方法,子类可以根据自身的需求来修改或扩展父类的行为。这提供了灵活性和可定制性,使子类能够根据特定的需求进行自定义实现。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 子类对父类方法的重写的概念
  • 语法
  • 示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档