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

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

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

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

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

以下为学习笔记;

01 多态实现方法

1.1、通过继承实现时

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

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

1.2、通过接口实现时

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

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

02 接口的概念

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

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

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

03 为什么要使用接口

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

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

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

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

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

04 后记

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

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

相关推荐
林川~018 小时前
Unity 万能物理检测工具:射线检测 / 范围检测 / 层级过滤 / 编辑器可视化(可直接拿去用)
游戏·unity·c#·射线检测·通用工具
He BianGu12 小时前
【WPF-VisionMaster】机器视觉通用平台V5.0版本发行说明
opencv·c#·wpf·halcon·机器视觉·visionmaster
tang_042712 小时前
【Hi.Ltd 专题】第9期:Interop 配置互操作(JSON/INI/XML/YAML/注册表/扫码)
经验分享·c#·hi.ltd系列
tang_042718 小时前
【Hi.Ltd 专题】第7期:Threading 采集线程、锁与 LRU 缓存
经验分享·c#·hi.ltd系列
A_nanda18 小时前
C# 界面卡顿:从定位到根治
c#
2501_9307077819 小时前
使用C#代码为新创建的 Word 文档创建目录
c#·word
czhc114007566320 小时前
同一个数,两把尺子:六组“看着一样、其实不一样“
c#
花北城21 小时前
【C#底层库】access_token授权鉴权验证
c#·鉴权·token·授权
rick97721 小时前
C# 动态代理与 DispatchProxy:从原理到实战的完整指南
c#
tang_042721 小时前
【Hi.Ltd 专题】第8期:Managements 插件、单例与服务定位
经验分享·c#·hi.ltd系列