📜  TypeScript 类继承 (1)

📅  最后修改于: 2023-12-03 15:05:39.849000             🧑  作者: Mango

TypeScript 类继承

在 TypeScript 中,我们可以使用类继承来实现类之间的关系。类继承是面向对象编程(OOP)中的一种重要概念,它允许我们通过派生一个类来创建一个新类,新类将继承原始类的属性和方法。

语法
class ChildClass extends ParentClass {
  // 子类的属性和方法
}
示例
class Animal {
  name: string;

  constructor(name: string) {
    this.name = name;
  }

  move(distance: number = 0) {
    console.log(`${this.name} is moving ${distance} meters.`);
  }
}

class Dog extends Animal {
  breed: string;

  constructor(name: string, breed: string) {
    super(name);
    this.breed = breed;
  }

  bark() {
    console.log(`Woof! Woof!`);
  }
}

const myDog = new Dog('Max', 'Labrador');
myDog.move(10); // Output: Max is moving 10 meters.
myDog.bark(); // Output: Woof! Woof!
console.log(myDog.name); // Output: Max
console.log(myDog.breed); // Output: Labrador

在上面的示例中,我们定义了一个 Animal 类作为父类,它有一个 name 属性和一个 move 方法。然后我们定义了一个 Dog 类作为子类,它继承自 Animal 类。Dog 类有一个额外的属性 breed 和一个 bark 方法。

通过使用 extends 关键字将 Animal 类作为父类,Dog 类可以访问并重用父类的属性和方法。在子类的构造函数中,我们使用 super 关键字调用父类的构造函数,并传递相应的参数。

我们可以创建一个 Dog 实例 myDog,并调用它继承自父类的 name 属性以及子类特有的 bark 方法。

总结

使用 TypeScript 类继承,可以很方便地扩展和重用已有的类。子类可以享有父类的属性和方法,并且可以添加自己特有的属性和方法。这是面向对象编程中重要的一部分,并有助于创建更加模块化和可扩展的代码。