1.类中的构造器不是必须写的,要对实例进行一些初始化的操作,如添加指定属性时才写。
2.如果A类继承了B类,且A类中写了构造器,那么A类构造器中的super是必须要调用的。
3.类中所定义的方法,都是放在了类的原型对象上,供实例去使用。
// 父类
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
speak() {
console.log(`我的名字是${this.name},我的年龄是${this.age}`);
}
}
let p1 = new Person('zmy', '18')
console.log(p1);
p1.speak()
// 继承子类
class Students extends Person {
constructor(name, age, grade) {
super(name, age)
this.grade = grade
}
//重写父类的方法
}
let s1 = new Students('张三', 15, '高中一年级')
console.log(s1);
//这时speak就是子类中重写之后的方法 ↓
s1.speak()