类的定义和继承

55 阅读1分钟
//类的定义
class Person {
  name = 'dell'
  getName() {
    return this.name
  }
}
const person = new Person();
console.log(person.name); //dell


//类的继承
class Teacher extends Person {
  getNames() {
    return 'Teacher'
  }
}
const teacher = new Teacher();
console.log(teacher.getName()); //dell
console.log(teacher.getNames());//Teacher  Teacher里面有自己的方法也会继承Person里面的方法


//子类重写父类的方法,在子类直接重写就可以啦  直接覆盖掉父类的这个方法
class Teacher2 extends Person {
  getNames() {
    return 'Teacher'
  }
  getName() {
    return 'lee'
  }
}
const teacher2 = new Teacher2();
console.log(teacher2.getName()); //lee


//子类使用父类的的属性或者方法  用一个关键字super 它代表的就是父类
//super有一个关键作用就是:当我们重写父类的方法或者属性的时候,还想调用父类的方法,此时我们就可以使用super进行父类属性或者方法的调用
class Teacher3 extends Person {
  getNames() {
    return 'Teacher'
  }
  getName2() {
    return super.getName() + '123'
  }
}
const teacher3 = new Teacher3();
console.log(teacher3.getName2()); //dell123