类
总结:
1.类中的构造器不是必须写的,要对实例进行一些初始化的操作,如添加指定属性时才写。
2.如果A类继承了B类,且A类中写了构造器,那么A类构造器中的super是必须要调用的,并且写在第一行调用。
3.类中所定义的方法,都是放在了类的原型对象上,供实例去使用
// 创建一个Person类
class Person {
constructor(name, age) {
// 构造器中的this指向类的实例对象
this.name = name
this.age = age
}
// 一般方法
speak() {
// 方法放在了类的原型对象上
console.log(`姓名${this.name},年龄${this.age}`)
}
}
const p1 = new Person('wangcai', 18)
console.log(p1)
p1.speak()
类的继承
// 创建一个Person类
class Person {
constructor(name, age) {
// 构造器中的this指向类的实例对象
this.name = name
this.age = age
}
// 一般方法
speak() {
// 方法放在了类的原型对象上
console.log(`姓名${this.name},年龄${this.age}`)
}
}
class Student extends Person {
constructor(name, age, grade) {
super(name, age)
this.grade = grade
}
study() {
console.log('我爱学习')
}
}
const s1 = new Student('小王', 12, '六年级')
console.log(s1)
s1.speak()
s1.study()