javascript
//创建Person类
class Person {
//构造器方法
constructor(name,age){
//构造器中this指向类的实例对象
this.name = name
this.age = age
}
speak(){
//speak方法再类的原型对象上,供实例使用
console.log(`我是${this.name},我今年${this.age}岁`)
}
}
const p1 = new Person('张三',18)
const p2 = new Person('李四',19)
console.log(p1)
console.log(p1)
p1.speak()
//继承
//创建一个Student类,继承自Person类
class Student extends Person {
constructor(name,age,grade){
super(name,age)
this.grade = grade
}
//重写继承自父类的方法
speak(){
//speak方法在Student类的原型链上
console.log(`我是${this.name},我今年${this.age}岁,我上${this.grade}`)
}
study(){
//study方法在原型对象上
console.log(`我在学Class`)
}
}
const s1 = new Student('张三',18,'三年级')
console.log(s1)
s1.speak()
s1.study()