TypeScript 类和接口之间的区别

2025年3月17日 | 阅读 3 分钟

Class

TypeScript 是一种面向对象的 JavaScript 语言,它支持类、接口、多态、数据绑定等编程特性。TypeScript 从 ES6 及更高版本开始支持这些特性。

类是用于创建可重用组件的基本实体。它是一组具有共同属性的对象。在 OOPs 方面,类是创建对象的模板或蓝图。它是一个逻辑实体。

我们可以在类定义中定义以下属性

字段: 它是在类中声明的变量。
方法: 它表示对象的动作。
构造函数: 它负责在内存中初始化对象。
嵌套类和接口: 这意味着一个类可以包含另一个类。

声明类的语法

我们可以通过在 TypeScript 中使用 class 关键字来声明一个类。 以下语法解释了类声明。

要阅读更多信息,点击这里

Interface

接口是一种结构,它在我们应用程序中充当契约。它定义了类要遵循的语法,这意味着实现接口的类必须实现其所有成员。我们不能实例化接口,但它可以被实现它的类对象引用。

接口仅包含方法和字段的声明,但不包含实现。我们不能用它来构建任何东西。一个类继承一个接口,实现接口的类定义接口的所有成员。

当 Typescript 编译器将其编译为 JavaScript 时,接口将从 JavaScript 文件中删除。 因此,它的目的是仅在开发阶段提供帮助。

接口声明

我们可以通过在 TypeScript 中使用 interface 关键字来声明一个接口。 以下语法解释了接口声明。

接口的用途

我们可以将接口用于以下用途

  • 验证属性的特定结构
  • 作为参数传递的对象
  • 从函数返回的对象。

要阅读更多信息,点击这里

TypeScript 类 vs. TypeScript 接口

TypeScript Class vs. Interface
TypeScript 类TypeScript 接口
引言类是用于创建可重用组件的基本实体。 它是一组具有共同属性的对象。 它可能包含字段、方法、构造函数等属性。接口定义了一种结构,它在我们应用程序中充当契约。 它仅包含方法和字段的声明,但不包含实现。
用途它用于对象创建、字段和方法的封装。它用于创建实体的结构。
关键字我们可以使用 class 关键字创建一个类。我们可以使用 interface 关键字创建一个接口。
编译在代码编译期间,类不会消失。在代码编译期间,接口完全消失。
实时使用设计模式,设计项目结构实现定义的架构
实例化可以实例化一个类来创建一个对象。无法实例化接口。
方法类的方法用于执行特定操作。接口中的方法是纯抽象的(只有声明,没有主体)。
访问说明符类的成员可以是 public、protected 或 private。接口的成员始终是 public 的。
构造函数类可以有一个构造函数。接口不能有构造函数。
实现/扩展一个类只能扩展一个类,并且可以实现任意数量的接口。一个接口可以扩展多个接口,但不能实现任何接口。

下一个主题TypeScript 面试