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

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

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

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

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

以下为学习笔记;

01 多态实现方法

1.1、通过继承实现时

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

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

1.2、通过接口实现时

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

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

02 接口的概念

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

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

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

03 为什么要使用接口

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

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

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

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

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

04 后记

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

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

相关推荐
淡海水4 小时前
02-07-原理篇-GC暂停时间的本质
开发语言·unity·c#·gc·暂停时间
小羊没烦恼!6 小时前
OS X 上使用.NET开发应用程序
开发语言·前端·数据库·人工智能·c#·策略模式
Behavior8 小时前
Unity 7.0 Alpha 拆解:编辑器干掉 Mono 换 CoreCLR
c#·unity3d·游戏开发
淡海水8 小时前
02-06-原理篇-增量式GC与并发GC
算法·unity·c#·并发·gc·增量
Vertira9 小时前
C# 函数封装成 DLL,
开发语言·c#
浅尝辄止;10 小时前
设计模式在HIS/LIS医疗系统中的完整实践指南(C#版)
开发语言·设计模式·c#
kimloner20 小时前
开源一个 376KB 的 Windows 桌面小工具:便签 + 截图标注 + OCR + 待办提醒(C# / WinForms)
windows·开源·c#·ocr·winforms
阿松爱学习21 小时前
【Unity开发】Aspose.PDF的使用
unity·pdf·c#
半亩码田21 小时前
C#转Python第4.8篇:正则表达式:Python re 模块 vs C# System.Text.RegularExpressions
python·正则表达式·c#
FPGA小徐1 天前
【一生一芯 / PA】异常响应机制:RISC-V 中 ecall → mtvec → mret 的完整代
开发语言·数据库·c#