C#知识|软件接口的认识

哈喽,你好啊,我是雷工!

日知其所亡,每天学到一些过去所不知道的东西。

关于多态的出现就是为了扩展而生,在多态的实现形式上,既可以通过继承实现,也可以通过接口实现;

前面了解了继承,接下来开始学习接口,

以下为学习笔记;

01 多态实现方法

1.1、通过继承实现时

①父类类型作为方法返回值类型,实际上返回的是一个具体的子类对象;

②父类类型作为方法参数类型,实际上传递的是具体的子类对象;

1.2、通过接口实现时

①接口作为方法返回值类型,实际上返回的是一个接口实现类对象;

②接口类型作为方法参数类型,实际上传递的是一个接口实现类对象;

02 接口的概念

接口就是一个标准,一个规范;

例如USB接口,即一种通讯规范,像物理上的四根线,及每根的定义,作用,其他无论是鼠标还是键盘,想要通过该接口连接计算机的话都要符合该规范才行;不然计算机将无法兼容识别该设备,也就无法正常使用;

软件接口与之类似,只不过不如实际的接口那么直观,相对比较抽象,但应用是一致的,都需要按照一定的规范去生成去设计需要的接口;

03 为什么要使用接口

场景1:当开发一个软件时,经常设计完一个对象后,并不需要马上考虑这个对象具体怎么编写,只是知道了这个对象要实现哪些行为;

场景2:当开发软件比较复杂时需要团队开发,经常设计很多模块由不同的人员完成,怎么做到不同的人开发完能很好的结合?

基于以上场景,均可以使用接口解决其中的问题:

①:设计完对象后,可以根据行为直接设计接口(接口就是只有规范规定,但并没有具体实现)

②:开发中可以把相关的模块都抽象成接口,然后接口直接相互协作,最后不同的开发人员实现不同的模块,这些模块开发完毕后,因为有接口,各个模块就可以自动集成了。

04 后记

以上简单了解了接口,以及为什么要使用接口,接下来会进一步了解怎么使用接口。

欢迎大家点赞留言,也欢迎在交流群内踊跃探讨。

相关推荐
猿长大人12 小时前
C# | JSON 序列化中的多态接口处理:基于 Attribute 实现精准 $type 控制
c#·json
一位狮子座的程序员17 小时前
如何用RAG解决AI智能体的知识盲区?
开发语言·c#
Nemo_XP18 小时前
C# gridlookupedit选中内容重复还原操作
服务器·前端·c#
猿长大人19 小时前
C# | 函数式编程入门
开发语言·c#·.net
unityのkiven20 小时前
C# 中的奇异递归模板模式:MonoSingleton<T> 的实现
java·开发语言·c#
雪隐21 小时前
WPF + MVVM 实战系列02-告别 INPC 手写时代,做个体面的现代 WPF 人
前端·后端·c#
我是苏苏21 小时前
WPF开发01:基础控件及常用模板篇
开发语言·c#·html·wpf
BerrySen1781 天前
现代 C# 全栈与高性能编程实战指南:从 CLR 底层机制到 AI Agent 智能体架构
人工智能·架构·c#
在世修行1 天前
从零打造 C# 工业视觉检测系统(六):OpenCV 图像处理与像素级比例尺标定
opencv·c#·视觉检测
小金子会发光1 天前
C# WinForms 手搓 Modbus RTU 调试助手:不依赖第三方 Modbus 库,从 CRC16 到 8 种功能码完整实现
c#·modbusrtu·串口通讯