ES6中的Class关键字和super()方法,使用详细(class类和super()方法)

news/2024/9/23 11:15:43/

简介:在ES6中,我们可以使用class关键字来定义类,并通过extends关键字实现类的继承,然后在子类中,我们可以使用super()关键字来调用父类的构造函数;今天来分享下class关键字的使用详细。

1、首先,使用class关键字,定义一个父类;

这里定义一个名为Fatherfn的class类,类名字首字母要大写class Fatherfn{ constructor是默认构造方法,不能修改constructor(name) { this.name = name;}父类中的eat()方法eat() { console.log(`${this.name} is eating.`);}}

2、然后再定义一个子类,通过extends、super()方法,继承父类名为Fatherfn的class类;

这里再定义一个名为Son的class类,并通过extends继承上面名为Fatherfn的类这里继承extends Fatherfn ,继承父类属性
class Son extends Fatherfn { constructor是默认构造方法,不能修改constructor(name, hobby) {结合super()方法, 可以继承调用父类的构造函数super(name); this.hobby= hobby;} 子类中的drink()方法 drink() { console.log(`${this.name} is drinking.`); } }

3、最后,创建一个子类的实例对象;

const demoFn= new Son("Buddy", "study");// 调用子类的方法 
demoFn.eat(); 
// 输出:Buddy is eating. demoFn.drink(); 
// 输出:Buddy is drinking.可以看到这里既可以使用父类函数中的eat()方法,也可以使用子类函数中的drink()方法。

注意事项:

  1. class关键字,命名的函数,名字首字母要大写(要求,但不强制);
  2. 每一个class类里面都有一个constructor构造方法,这个方法名字不能修改;
  3. class类中,无法使用es5的function()写法;

总结:

1、ES6中的class类继承和super()用法可以实现类与类之间的继承关系,然后通过extends关键字,子类可以继承父类的属性和方法。

2、在子类的构造函数中,使用super()关键字调用父类的构造函数,并传递相应的参数。这样可以实现代码的复用和扩展,提高代码的可读性和可维护性。


http://www.ppmy.cn/news/711651.html

相关文章

vue细节讲解

vue题库 自 检vue部分1、什么是vue生命周期?有什么作用?2、第一次页面加载不是 keep-alive 的第一次加载会触发哪几个钩子3-1、性能优化3-2、移动端的性能优化3-3、Vue项目性能优化3-3-1:Vue 代码层面的优化;3-3-2:web…

一个智能家居“适老化”的准样本

“当你老了,头发白了,睡意昏沉……” 这首19世纪爱尔兰诗人叶芝献给母亲的诗,因莫文蔚的演唱而为国人知晓。老年人不仅能够老有所依,也可以安享美好的生活,这是全社会共同追求的美好愿望。 如今,伴随着国家…

结构设计到项目管理:工程师是怎么练成的.

1. 我是一个有10 年电子产品研发经验的工程师和10 年IT 知名公司研发中心管理经验的技术管理者。世上好的管理理念可能归纳起来就那么1~2 百条,也都好理解,难的是怎么适当地运用在特定的环境中。下面的文章共18 篇,是我20 年工作中的片段&am…

day 41整数拆分 不同的二叉搜索树

343. 整数拆分 分拆数字i&#xff0c;可以得到的最大乘积为dp[i]。dp[i] max({dp[i], dp[i-j]*j, (i-j)*j}); 遍历比i小的数字&#xff0c;作为切分点&#xff0c;j1 表示在 1处分割&#xff0c;因为至少拆分成两段&#xff0c;所以 j<i。 确定切割点之后有两种情况 &…

Qt实践录:实现http服务并解析json协议

本文主要记录在 Qt 中实现http服务的示例&#xff0c;包括解析json协议数据。 起因 很早之前&#xff0c;对自己写的一个工程测试&#xff0c;需对接一个C写的web服务&#xff0c;但局域网中尚未有&#xff0c;于是部署之&#xff0c;web服务使用了cgi技术&#xff0c;于是找了…

Linux教程——Linux /etc/shadow(影子文件)内容解析(超详细)

/etc/shadow 文件&#xff0c;用于存储 Linux 系统中用户的密码信息&#xff0c;又称为“影子文件”。 前面介绍了 /etc/passwd 文件&#xff0c;由于该文件允许所有用户读取&#xff0c;易导致用户密码泄露&#xff0c;因此 Linux 系统将用户的密码信息从 /etc/passwd 文件中…

QT调用glog日志流程

glog日志库是Google开源的轻量级的日志库&#xff0c;平时在开发过程中经常要使用到日志&#xff0c;本篇记录Qt项目使用glog日志库的记录。 1.首先下载cmake&#xff0c;Download | CMake 安装设置环境变量&#xff0c;检查安装情况 2.下载glog源码 git clone https://git…

logback实现读取spring和nacos的动态配置

一.获取Spring的配置 1.设置application.yml配置 例如在这里我们设置了一个spring.application.name的参数 spring:application:name: nms-lm 2.获取spring项目启动文件中的配置。 注&#xff1a;这里的scope可以选择content和local&#xff0c;如果集成了其他组件&#x…