js---class和继承

js—class和继承

一.class

1.constructor
2.属性
3.方法

class Student {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }

    sayhi() {

        console.log(
            `姓名,${this.name}, 年龄,${this.age}`
        );
        //上述形式为模板字符串,写起来比较方便,为es6新增
        //若用以前的写法,则需要用+号进行拼接

    }
}

const zby = new Student('zby', 22);
//new Student 时,进入constructor构造方法
console.log(zby.name);
console.log(zby.age);
zby.sayhi();

二.继承

//父类
class Person {
    constructor(name) {
        this.name = name;
    }
    eat() {
        console.log(`${this.name} ,吃东西了`);

    }
}

//子类--学生类
class Student extends Person {
    constructor(name, age) {
        super(name);
        this.age = age;
    }
    sayhi() {
        console.log(`${this.name},今年 ${this.age} 岁了`);

    }
}

//子类--老师类
class Teacher extends Person {
    constructor(name, sub) {
        super(name);
        //把name给Person 的constructor 
        this.sub = sub;
    }
    teach() {
        console.log(`${this.name}${this.sub} 课`);
    }
}

const zby = new Student('zby', 18);
console.log(zby.name);
console.log(zby.age);
zby.sayhi();

const aaa = new Teacher('aaa', '数学');
console.log(aaa.name);
console.log(aaa.sub);
aaa.teach();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值