返回

TypeScript 入门进阶(二)—— 类

前端

TypeScript 的类是对象蓝图的数据类型,用于创建具有特定属性和方法的对象实例。类在面向对象编程中扮演着至关重要的角色,它允许我们将数据和行为组织成可重用的模块。

类的基本语法

class Person {
  name: string;
  age: number;

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

  greet() {
    console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);
  }
}

这个例子定义了一个 Person 类,它有两个属性:nameage。此外,它还有一个构造函数,用于在创建对象实例时初始化这些属性。类还定义了一个 greet() 方法,用于向控制台打印一条带有个人信息的欢迎消息。

实例化类

要使用类,我们需要实例化它。我们可以通过使用 new 来创建新对象:

const person = new Person('John', 30);
person.greet(); // Hello, my name is John and I am 30 years old.

通过实例化类,我们可以创建特定于该类的对象。在这个例子中,我们创建了一个名为 personPerson 对象,并初始化了它的 nameage 属性。然后,我们可以调用 greet() 方法来输出欢迎消息。

类的继承

类可以继承自其他类,从而允许我们创建派生类,派生类可以继承父类的属性和方法。为了实现继承,我们使用 extends

class Employee extends Person {
  salary: number;

  constructor(name: string, age: number, salary: number) {
    super(name, age); // 调用父类的构造函数
    this.salary = salary;
  }

  getSalary() {
    return this.salary;
  }
}

这个例子定义了一个 Employee 类,它继承自 Person 类。Employee 类添加了一个新属性 salary 和一个 getSalary() 方法。我们可以像实例化 Person 类一样实例化 Employee 类:

const employee = new Employee('Jane', 35, 50000);
employee.greet(); // Hello, my name is Jane and I am 35 years old.
console.log(`Employee salary: ${employee.getSalary()}`); // Employee salary: 50000

TypeScript 中类的优点

使用 TypeScript 中的类提供了许多好处:

  • 更好的代码组织: 类允许我们将相关的数据和行为组织成可重用的模块,从而提高代码的可读性和可维护性。
  • 代码复用: 通过继承,我们可以创建新的类,这些类继承父类的属性和方法,从而促进代码复用和避免重复。
  • 类型安全: TypeScript 的类型系统有助于确保类中的数据类型安全,从而防止类型错误并提高代码可靠性。
  • 可扩展性: 类允许我们根据需要添加新属性和方法,使我们能够随着应用程序的增长轻松扩展代码。

结论

TypeScript 中的类是一个强大的工具,它允许我们创建可重用的对象蓝图,从而提高代码的组织性、可重用性和类型安全性。通过理解类的基本语法、继承和优点,我们可以有效地利用 TypeScript 来构建健壮且可维护的应用程序。