ES6 中类的定义

简介: ES6 中类的定义
// 1、类的基本定义
class Parent {
    constructor(name = "小白") {
        this.name = name;
    }
}
// 2、生成一个实例
let g_parent = new Parent();
console.log(g_parent); //{name: "小白"}
let v_parent = new Parent("v"); // 'v'就是构造函数name属性 , 覆盖构造函数的name属性值
console.log(v_parent); // {name: "v"}
// 3、继承
class Parent {
    //定义一个类
    constructor(name = "小白") {
        this.name = name;
    }
}
 
class Child extends Parent {}
 
console.log("继承", new Child()); // 继承 {name: "小白"}
// 4、继承传递参数
class Parent {
    //定义一个类
    constructor(name = "小白") {
        this.name = name;
    }
}
 
class Child extends Parent {
    constructor(name = "child") {
        // 子类重写name属性值
        super(name); // 子类向父类修改 super一定放第一行
        this.type = "preson";
    }
}
console.log("继承", new Child("hello")); // 带参数覆盖默认值  继承{name: "hello", type: "preson"}
// 5、ES6重新定义的ES5中的访问器属性
class Parent {
    //定义一个类
    constructor(name = "小白") {
        this.name = name;
    }
 
    get longName() {
        // 属性
        return "mk" + this.name;
    }
 
    set longName(value) {
        this.name = value;
    }
}
 
let v = new Parent();
console.log("getter", v.longName); // getter mk小白
 
v.longName = "hello";
console.log("setter", v.longName); // setter mkhello
// 6、类的静态方法
class Parent {
    //定义一个类
    constructor(name = "小白") {
        this.name = name;
    }
 
    static tell() {
        // 静态方法:通过类去调用,而不是实例
        console.log("tell");
    }
}
 
Parent.tell(); // tell
// 7、类的静态属性:
 
class Parent {
    //定义一个类
    constructor(name = "小白") {
        this.name = name;
    }
 
    static tell() {
        // 静态方法:通过类去调用,而不是实例
        console.log("tell"); // tell
    }
}
 
Parent.type = "test"; // 定义静态属性
 
console.log("静态属性", Parent.type); // 静态属性 test
 
let v_parent = new Parent();
console.log(v_parent); // {name: "小白"}  没有tell方法和type属性
相关文章
|
存储 运维 数据挖掘
服务器数据恢复-DELL EqualLogic PS存储raid5数据恢复案例
服务器数据恢复环境: 一台DELL EqualLogic PS系列存储,存储中有一组由16块SAS硬盘组成的RAID5。上层是VMFS文件系统,存放虚拟机文件。存储上层分了4个卷。 服务器故障&检测: 存储上有2个硬盘指示灯显示黄色,磁盘出现故障导致存储不可用,存储设备已经过保。 硬件工程师对故障存储中的16块硬盘做了硬件故障检测,发现其中有2块磁盘存在坏道,SMART的错误冗余级别已经超过阈值。
服务器数据恢复-DELL EqualLogic PS存储raid5数据恢复案例
|
NoSQL Redis
Redis之发布订阅
Redis之发布订阅
133 0
|
前端开发 JavaScript UED
【无标题】
【无标题】
80 1
|
关系型数据库 Serverless 分布式数据库
评测|PolarDB MySQL 版 Serverless
评测|PolarDB MySQL 版 Serverless PolarDB Serverless构建了一个全新的数据库形态,这种情况下,CPU和内存资源因其池化其使用率将会大幅度提升,云原生数据的成本将会远低于自建和RDS等一体化数据库,云原生技术的价值将会得到充分的体现。Serverless数据库能够使得数据库集群资源随客户业务负载动态弹性扩缩,将客户从复杂的业务资源评估和运维工作中解放出来。下面我尝试从几个维度对PolarDB的Serverless能力进行产品测评。
1086 0
评测|PolarDB MySQL 版 Serverless
|
JavaScript Java 测试技术
Java项目基于ssm+vue.js的智能交互式在线网上花店附带文章和源代码设计说明文档ppt
Java项目基于ssm+vue.js的智能交互式在线网上花店附带文章和源代码设计说明文档ppt
98 0
|
安全 区块链 UED
带你读《自主管理身份:分布式数字身份和可验证凭证》精品文章合集
带你读《自主管理身份:分布式数字身份和可验证凭证》精品文章合集
|
小程序 定位技术
微信小程序如何实现地图多点标注
微信小程序如何实现地图多点标注
1239 0
|
传感器
HIMA K9203 要控制系统的每个变量的状态
HIMA K9203 要控制系统的每个变量的状态
HIMA K9203 要控制系统的每个变量的状态
每日一题——左旋转的字符串
每日一题——左旋转的字符串
|
Unix 程序员 C语言
C语言编程—错误处理
C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据。在发生错误时,大多数的 C 或 UNIX 函数调用返回 1 或 NULL,同时会设置一个错误代码 errno,该错误代码是全局变量,表示在函数调用期间发生了错误。您可以在 errno.h 头文件中找到各种各样的错误代码。 所以,C 程序员可以通过检查返回值,然后根据返回值决定采取哪种适当的动作。开发人员应该在程序初始化时,把 errno 设置为 0,这是一种良好的编程习惯。0 值表示程序中没有错误。 errno、perror() 和 strerror() C 语言提供了 perror() 和
156 0