koa 基础(十八)es6中的类、静态方法、继承

时间:2023-07-09 18:47:37

1.app.js

/**
* es6中的类、静态方法、继承
*/
// 定义Person类
class Person {
constructor(name, age) { /*类的构造函数,实例化的时候执行,new的时候执行*/
this._name = name;
this._age = age;
}
// 定义方法 注意:在es6里面方法之间没有逗号(,)
getName() {
console.log(this._name)
}
setName(name) {
this._name = name;
}
} var p = new Person('张三', '20');
p.setName('李四');
p.getName(); // 继承
class People {
constructor(name, age) {
this.name = name;
this.age = age;
}
getInfo() {
console.log(`姓名:${this.name} 年龄:${this.age}`)
}
run() {
console.log('run')
}
static work() { /*静态方法*/
console.log('这是es6里面的静态方法');
}
} People.instance = '这是一个静态方法的属性';
People.work(); /*调用es6里面的静态方法*/ class Web extends People { // 继承了 People
constructor(name, age, sex) {
super(name, age); /*实例化子类的时候把子类的数据传给父类*/
this.sex = sex; /*属性*/
}
print() { /*实例方法*/
console.log(this.sex)
}
} var w = new Web('张三', '30', '男');
w.print();

.