TypeScript 中,接口(Interface)

在 TypeScript 中,接口(Interface)是一种定义对象结构的类型。接口定义了对象应该具备的形状,即对象应该具有哪些属性和方法。

代码示例:

复制代码
// 定义一个接口,表示一个人的信息  
interface Person {  
  name: string; // 姓名属性,类型为字符串  
  age: number; // 年龄属性,类型为数字  
  greet(): void; // greet 方法,没有返回值  
}  
  
// 创建一个实现 Person 接口的对象  
const john: Person = {  
  name: 'John Doe',  
  age: 30,  
  greet() {  
    console.log(`Hello, my name is ${this.name}`);  
  }  
};  
  
// 使用该对象  
john.greet(); // 输出:Hello, my name is John Doe

示例中定义了一个名为 Person 的接口(通常首字母要大写 )。接口中定义了:两个属性(nameage)和一个方法(greet)。

然后,创建了一个名为 john 的对象,该对象实现了 Person 接口。这意味着 john 对象必须具有 Person 接口中定义的所有属性和方法。

最后,调用了 john 对象的 greet 方法,该方法打印了一条问候信息。

需要注意的是,接口在 TypeScript 中主要用于定义对象的形状,而不是实现具体的功能。实现接口的对象需要自行提供接口中定义的所有属性和方法的实现。

相关推荐
LCG元7 分钟前
现代Web应用高可用架构设计与性能调优实战
前端·wpf
丷丩27 分钟前
MapLibre GL JS第20课:更新GeoJSON多边形
前端·javascript·gis·mapbox·maplibre gl js
swipe31 分钟前
DeepAgents middleware 工程实战:把复杂 Agent 的运行时基建交给可组合中间件
前端·面试·llm
丷丩37 分钟前
MapLibre GL JS第33课:渲染世界副本
javascript·gis·map·mapbox·maplibre gl js
前端环境观察室38 分钟前
别让 Agent 浏览器任务无限重试:失败分类、RetryPolicy 与人工复核
前端
bonechips38 分钟前
深入理解 JavaScript的历史包袱——变量提升(Hoisting)
javascript·深度学习
喵个咪1 小时前
Headless 后端实践:基于Go的企业级多栈管理系统脚手架
前端·vue.js·react.js
m0_738120721 小时前
渗透测试基础——黑盒测试下的Web漏洞挖掘与利用解析(一)
服务器·前端·网络·安全·php
丷丩1 小时前
MapLibre GL JS第31课:添加实时数据
javascript·gis·map·mapbox·maplibre gl js
candyTong2 小时前
Claude Code 每次调用 API 时,上下文是怎么"拼"出来的?
javascript·后端·架构