TypeScript-interface接口篇

article/2025/10/1 9:39:30

在这里插入图片描述
简介

接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用。接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。 typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括属性、函数、可索引和类等。定义标准。

1、属性接口

定义接口interface fullName {//关键字是interfacefirst: string;//定义属性名以及类型second: string;//定义属性名以及类型third: number;//定义属性名以及类型}function printName(name: fullName) {//规定传入的值必须符合要求console.log(name.first + "--" + name.second);console.log(name.third);}// printName({//这种写法错误,直接传对象只能写第一和第二个参数// //不能写入其他参数//     first : "spring",//     second : "summer",//     age : 20,//     sex : 'male',// })let obj = {//写法正确first: "Missing",//属性名与属性值必须符合要求second: "Kissing",//属性名与属性值必须符合要求third: 20,//属性名与属性值必须符合要求}printName(obj);//传值对传入的值可填可不填interface season {one: string;two: string;three: string;four?: string;//加上“?”可以填入值也可以不填入值readonly five: string //关键字readonly代表着只读并不可修改}function oder(oder: season) {console.log(oder.one);console.log(oder.two);console.log(oder.three);//console.log(oder.five);}let oderSeason = {one: 'spring',two: "summer",three: "autumn",//four : "winter",//在抽象中已经加入“?”这个值可以不写}oder(oderSeason);

2、函数类型的接口

	//函数类型接口 对方法传入的参数,以及返回值的约束,不能直接传入变量名 必须以实参传递进去interface encryption {//定义一个函数类型的接口(key: string, value: string): void;}let admin: encryption = (key: string, value: string): void => {//实现这个接口console.log(key + "---" + value);//name --- Odin}admin('name', "Odin");

3、可索引接口也就是数组和对象的约束(一般不常用)

	//对数组的约束 可索引接口interface userArr {[index: number]: string;//下标的类型必须是number 而数组里面的类型可以任意指定}let arrayThird: userArr = ["20", "40,"];//对 对象的约束interface userObj {[index: string]: string;}let userObject: userObj = {name: "string",age: '20',}

4、“类”类型接口:对类的约束和抽象类相似

	interface Rainbow {name: string;color(str: string): void;}class sevenRainbow implements Rainbow { //使用关键字implements 继承接口name: string;constructor(name: string) {this.name = name;}color(mean: string) {console.log(this.name + ',' + mean);}}let SevenRainbow = new sevenRainbow("什么是幸福?");SevenRainbow.color('幸福就是猫吃鱼,狗吃肉,奥特曼打小怪兽');

谢谢观看 !!! 如有不足,敬请指教


http://chatgpt.dhexx.cn/article/6rr5TTMU.shtml

相关文章

TypeScript(四)接口

目录 前言 定义 用法 基本用法 约定规则 属性控制 任意属性 可选属性 只读属性 定义函数 冒号定义 箭头定义 接口类型 函数接口 索引接口 继承接口 类接口 总结 前言 本文收录于TypeScript知识总结系列文章,欢迎指正! 在介绍TS对象…

Type-C接口简单介绍-面向单片机应用

Type-C接口简单介绍-面向单片机应用 1、绪论 用单片机做一些东西时,Type-C接口逐渐替代了MicroUSB接口。但不像MicroUSB那样只有5V、GND、D、D-、ID五个接口,Type-C接口有24个引脚,比较复杂。大多时候我们用TypeC也用不到USB3.0协议&#x…

CTP_将C++封装为Python可调用接口

目录 写在前面: 前置准备: step 1 与上期所原始代码对比分析源码 td源码 1 配置属性-》常规-》配置类型 要为 “动态库(.dll)” 2 VC目录 -》包含目录 3 VC目录 -》 库目录 4 链接器-》常规-》附加库目录 5 链接器-》输入-》附加依赖项 vnctp.h 的功…

一文读懂USB Type-C接口 <一>:引脚和功能指南

本文将介绍USB Type-C标准的一些最重要的特性。 你知道如何使用USB Type-C接口吗?本文列出了USB Type-C引脚的解剖结构,并简要介绍了其各种模式。 USB Type-C是一种USB连接器系统的规范,它在智能手机和移动设备中越来越受欢迎,能够提供电力和…

VisionPro连接相机步骤

一、修改相机与电脑IP地址在同一网段上 1、修改相机IP地址 在菜单栏找到 “Cognex GigE Vision Configurator” ,可直接输出搜索。 或者在visionPro默认安装目录下 “C:\Program Files\Cognex\VisionPro\bin”,找到“Cognex GigE Vision Configurator…

机器视觉——相机选型

目录 相机选型 分辨率、快门、帧率、色彩、靶面、接口 镜头选型 分辨率、靶面、焦距、接口、光圈畸变工作距离 常用计算示例 相机选型 分辨率、快门、帧率、色彩、靶面、接口 镜头选型 分辨率、靶面、焦距、接口、光圈畸变工作距离 常用计算示例 1. 面阵相机和镜头选型 已…

线扫相机的选择

1.通过幅宽和精度求像素个数选择相机: Rmin为最小像素数;FOV为检测幅宽;X为检测精度。通过计算结果选择相机大小。 如果幅宽要求120mm,精度要求0.1,得到最少所需像素个数为1200,选择2k的线扫相机即可满足。…

1-CCD相机选型

1-相机分类 2-以像素数选择(高像素型或标准型) 从“像素分辨率”这一点来添加良否判定的基准,可选择最佳像素数的相机! 视觉系统所使用的 CCD 拍摄元件是以格子状排列的较小像素的集合体。在作为标准型经常使用的 31 万像素 CCD …

相机位姿估计

相机位姿估计 前言旋转角度欧拉角相机位姿求解旋转矩阵和旋转向量之间的转换旋转矩阵和欧拉角之间的转换平移量求解代码 前言 这部分内容博主也不是很熟悉,写下这篇博文想记录下自己当时的求解过程,也想让看到的朋友一起讨论,看看我做的对不…

iOS 相册多选 相机选择图片

前言 经过几天的断断续续的编写终于把这一个小项目完成了,现在刚刚完成,代码看着不整洁,请多包涵。 前几天要弄个相册多选和照相选图的功能,以前做过单选上传头像之类的。但是多选确实不像那么简单,github找了好多的…

工业相机和镜头选型技巧

工业相机和镜头选型技巧 一、加接圈,视野为什么会变小?1、视野公式理解2、加接圈后视野变小分析 二、在如下试验台中,加了接圈,图像要清晰,那么相机高度应该如何调整?1、试验台场景2、像距、物距和焦距的关…

工业视觉检测如何选择合适的工业相机?

1、根据应用的不同分别选用CCD或CMOS相机CCD工业相机主要应用在运动物体的图像提取,如贴片机机器视觉,当然随着CMOS技术的发展,许多贴片机也在选用CMOS工业相机。用在视觉自动检查的方案或行业中一般用CCD工业相机比较多。CMOS工业相机由成本…

【工业相机】【深度3】相机选择-精度和曝光需求计算 - 输入:1 被测试物体的最小体积 2 被测物体的移动相对速度

前言:本举例,说明,我们在工业场景下,如果需要在某个速度下计算某个尺寸的物体的工业相机的精度计算方法 1 需求定义 本需求定义为测量一个有移动速度的工业被测物体: 输入参数标识输入参数举例FOVFOV12寸&#xff08…

机器视觉-相机选择方法-缺陷检测

主要分为三部分 1.相机示意图及基本结构 2.相机参数确定方法 3.最终选择 1.相机示意图及基本结构 简图↑ 全图↑ 光圈与景深↑ 2.相机基本参数确定 视野与像素确定 被检测石英镜片的最大直径为38.6mm。也就是最大弥散圆直径。 样品↑ 较小划痕样本↑ 划痕测量↑ 如上图&…

iOS相机选择器

最近有很多朋友加我QQ, 说是在iOS8相机遇到问题.http://blog.csdn.net/chenyong05314/article/details/44812085 本人在使用相机这块时, 所有东西都封装到了一个类里面, 外部使用只需要一行代码, 非常方便, 现分享出来供大家使用. 代码示例: // Controller 为弹出的VC [[Ca…

Swift使用UIImagePickerController 从相册选择图片、从相机选择图片

配置: 如果是相机使用,需要在info.plist文件增加使用前应用程序说明;相机使用也是如此。(第二个是CALENDARS权限,打错了;图片是Photo Library Usage Description) 从相册选择图片&#xff1a…

摄影小白入门相机选择(个人出发)

1.微单与卡片机 在产品质量上,相机的感光器件CMOS这些,可以一概认为,同价同质。 两者的区别主要在镜头的设计,黑卡被设计为不可更换镜头式无反相机,入门级别的一般搭配标准变焦镜头 如16-55这种焦距,旗舰级…

机器视觉系统中相机镜头选型技巧_工业相机在机器视觉系统中的地位和作用

一、什么是工业相机 工业相机是机器视觉系统中的一个关键组件,其最本质的功能就是将光信号转变成有序的电信号。选择合适的相机也是机器视觉系统设计中的重要环节,相机的选择不仅直接决定所采集到的图像分辨率、图像质量等,同时也与整个系统的运行模式直接相关。 二、工业相…

栅格重投影(投影变换)

OpenLayers能够在不同的坐标系统中显示来自WMS、WMTS、静态图像和许多其他源的栅格数据。图像的地图重投影直接发生在web浏览器中。在任何Proj4js支持的坐标参考系统中都是可视的,并且以前不兼容的图层现在可以组合和叠加。 使用: API的使用非常简单。…