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

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

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

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

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

以下为学习笔记;

01 多态实现方法

1.1、通过继承实现时

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

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

1.2、通过接口实现时

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

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

02 接口的概念

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

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

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

03 为什么要使用接口

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

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

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

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

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

04 后记

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

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

相关推荐
大Mod_abfun19 分钟前
Socket网络通信教程1(文件传输,IPv4+v6,多客户端管理,重构?)
服务器·网络·c#·socket·vb.net·文件传输
czhc11400756631 小时前
ModBus 218
c#
Never_Satisfied14 小时前
在c#中,使用windows自带功能将文件夹打包为ZIP
开发语言·windows·c#
Never_Satisfied16 小时前
在c#中,string.replace会替换所有满足条件的子字符串,如何只替换一次
开发语言·c#
观无18 小时前
visionpro的dll导入
c#
Desirediscipline19 小时前
#define _CRT_SECURE_NO_WARNINGS 1
开发语言·数据结构·c++·算法·c#·github·visual studio
蚊子码农21 小时前
算法题解记录-2452距离字典两次编辑以内的单词
开发语言·算法·c#
专注VB编程开发20年21 小时前
c# vb.net Redis 左侧添加,右侧添加(添加到头部,添加到尾部)
redis·c#·.net
kylezhao201921 小时前
C#异步和并发在IO密集场景的典型应用 async/await
开发语言·数据库·c#
游乐码1 天前
c#索引器
开发语言·c#