类与继承
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| class Person { constructor(name,age) { this.name = name; this.age = age; } showInfo() { console.log(this.name,this.age) } static showName() { console.log('这个人活了'); } }
var person = new Person('高冷俊',22); person.showInfo(); Person.showName();
|
类中的方法不需要带function关键字。类中的方法前添加static关键字表示该方法是一个静态方法。静态方法无法通过实例调用,只能通过类调用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| class Animal { constructor(name) { this.name = name; } showName() { console.log(this.name); } static die() { console.log('这个动物死了'); } }
class Mouse extends Animal { constructor(name,color) { super(name); this.color = color; } showInfo() { console.log(this.name,this.color); } }
var m = new Mouse('jerry','brown'); m.showName(); m.showInfo();
|
通过extends关键字告诉该类继承其它类,类中使用super()继承父类属性