07 类

类(Class) #

类是 TypeScript 支持面向对象编程的重要特性,可以用来创建对象和封装数据与行为。

基本概念 #

TypeScript 中的类支持继承、访问修饰符(public、private、protected)、抽象类和静态成员。它扩展了 JavaScript 的类功能,并添加了类型检查。

使用场景 #

  • 建模真实世界实体,如用户、产品。
  • 实现继承和多态,提升代码复用。
  • 在框架中使用类组件,如 React 类组件。

示例代码 #

class Animal {
  protected name: string;
  constructor(name: string) {
    this.name = name;
  }
  public speak(): void {
    console.log(`${this.name} makes a sound.`);
  }
}

class Dog extends Animal {
  constructor(name: string) {
    super(name);
  }
  speak(): void {
    console.log(`${this.name} barks.`);
  }
}

const dog = new Dog("Buddy");
dog.speak();

最佳实践 #

  • 使用访问修饰符控制成员可见性。
  • 优先使用组合而非继承。
  • 结合接口实现类契约。