在es6中可以通过class关键字来定义类和实现类的继承。主要体现在以下几点
- 在类中通过constructor定义构造方法。
- 通过new关键字来创建类的实例。
- 通过extends类实现类的继承。
- 通过super调用父类的构造方法。
- 重写从父类中继承的一般方法。
//定义一个人物的类 class Person { //定义类的构造方法 constructor(name,age){ this.name = name; this.age = age; } //定义类的一般方法 showName(){ console.log(this.name,this.age) } } let p1 = new Person("kobe",39); p1.showName(); //定义一个子类 class StarPerson extends Person { //extends来实现类的继承 constructor(name,age,salary){ super(name,age);//super来实现继承父类的构造方法 this.salary = salary;//自己特有的属性 } //父类的方法重写 showName(){ console.log(this.name,this.age,this.salary) } } let p2 = new StarPerson("kobe",39,100000); console.log(p2); p2.showName();
注意:定义类的方法时,前面不需要加上function这个保留字,直接把函数定义放进去就可以了,另外方法之间不需要逗号分隔,加了会报错。