ECMAScript 6(ES6)入门

类与对象

此课程是收费课程,请先购买或加入会员后再访问。

类与对象

[TOC]

class Animal
{

    //构造
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }

    run(){
        return `我的名字是${this.name},我会跑`;
    }

    //静态方法
    static eat()
    {
        return '我要吃';
    }
}

//`类(Animal)` 通过`实例化(new)` 变为 `对象(pig)`
const pig = new Animal('小猪佩奇', 5);
pig.run()

//静态方法直接通过 `类.方法名` 来调用
Animal.eat();

继承

class Bird extends Animal 
{
    constructor(name, age, color='黄色') {
        //super调用父类的代码
        super(name, age);
        this.color = color;
    }

    run()
    {
        return super.run() + `,但是我跑不快`;
    }

    fly()
    {
        return `我${this.age}岁了,我的羽毛是${this.color}的,我会飞。`
    }
}

const polly = new Bird('鹦鹉波利', 3);
polly.run();
polly.fly();