C#中的接口如何使用以及具体用途?

C#(sharp)接口是一个让很多初学C#者容易迷糊的东西,用起来好像很简单,定义接口,里面包含方法,但没有方法具体实现的代码,然后在继承该接口的类里面要实现接口的所有方法的代码,但没有真正认识到接口的作用的时候就觉得用接口是多此一举,当然你这样想那是绝对绝对错误的,比尔盖茨的微软请的员工都是比盖茨还聪明的人,难道他们那么厉害的一堆程序员设计的C#(sharp)语言难道这样画蛇添足吗?
关于接口的作用,我们来具体深入浅出的举例说明分析一下!

1.我们常听说的接口是什么?

  • 01

    我们先从字面意思来理解一下什么是接口! 大家现在手机上,可能有很多app软件,比如天气预报的软件,有很多种,什么墨迹天气啊之类的等等.但是那么多天气预报软件,它们的数据是从哪里来的?其实都是从气象台来的.但是气象台只有一家,所以,给它们留了一个接口,它们就可以调用,实现自己想要的功能.

  • 02

    再举个例子,比如支付宝钱包或者其他工商银行,建设银行等.现在很多网站都支持在线支付.这些金融支付公司也是留下了接口,只要你申请通过,就可以接入进去.你自己开发的网站或者软件就可以拥有了客户支付功能. 甚至在我们的计算机编程中,我们调用的很多函数其实抽象的说是接口.像我们经常听到 API函数. API其实就是Application Programming Interface的缩写,翻译过来就是应用程序接口!

2.C#中接口的演示与讲解

  • 01

    那么我们现在打开Visual Studio中,新建一个C#控制台程序,用最简单的代码,我们来学习理解一下接口.  为了让每个人都可以快速理解,我的接口名就使用中文来命名.

  • 02

    第一步,先和我一样,写一个接口. 接口的名字叫做:接口_动物叫,这个动物有个"叫"的方法(能力)! //如果你的VS是低版本,可能不支持中文,那么你就用英文或者拼音先代替. //我的VS是2013版本 public interface 接口_动物叫 { void 叫(); }

  • 03

    我们继续在下面写一个类. 类的名字叫做狗.狗继承了我们前面写的那个接口,并且在类中实现了"叫"的方法. public class 狗 : 接口_动物叫 { public void 叫() { Console.WriteLine("汪!汪汪!!"); } }

  • 04

    我们在Main函数中,创建一只名叫旺财的狗,让它润润嗓子,吼两声. 如果你步骤和我一样,不出意外的话,你的屏幕上就会看到和我一样的效果. 狗 旺财 = new 狗(); 旺财.叫(); Console.ReadKey();

  • 05

    那么问题来了??既然你开始研究学习接口了,那么在这之前你一定了解过面向对象的基本语法. 我为什么要使用接口? 我可以直接在狗这个类里面写一个"叫"的方法就OK了.干嘛要绕一圈需要先继承接口才写了?这不是脱裤子放屁,多此一举吗? 比如我把代码稍微修改了一下,用以下的方法实现不是更加简单吗?

  • 06

    那么我们再来看一段代码!!! 我们根据前面的接口,又写了一个猫的类,并且在猫中也实现了叫这个方法. public class 猫 : 接口_动物叫 { public void 叫() { Console.WriteLine("喵!喵喵!!"); } }

  • 07

    把Main函数中的代码,修改成如下: 狗 旺财 = new 狗(); 猫 豆豆 = new 猫(); 旺财.叫(); 豆豆.叫(); Console.ReadKey();

  • 08

    猫猫和狗狗都开始叫了. 我们都知道,如果继承接口之后,必须在自己的类里面实现接口中的方法. 按照我们前面的方式直接不继承接口,在类中实现也是可以的. 但是如果我们从设计角度来看,C#和JAVA是为了应付软件危机,开发大型软件项目的团体编程. 一个项目中,如果有N个动物类要编写,这种类很复杂,工程量比较大. 每个类都分配一个程序员去完成.

  • 09

    A程序员开发动物驴. B程序员开发动物狗. C程序员开发动物猪. D程序员开发动物凤凰. ~~~~~~~~~~~~~ 省略5000种动物. 他们各自写的类,没有什么联系. 可是这些动物都需要一个"叫"或者其他更多的方法. 如果统一,让它们从一个接口继承,方便管理统一,方便调用. 如果不使用接口,虽然可以达到目的. 但是没有约束,将来软件很容易形成Bug或者漏掉这些方法. 所以,我们这么一琢磨就明白了,就明白了C#中的接口在什么时候用比较合适. 协定 ,降低耦合。 将来大家参与一些团队开发项目中,可能才会深切的体会到接口带来的方便. 而往往我们学习的时候,都是一个人写代码,对接口的体会并没有那么强烈.

(0)

相关推荐

  • 快速辨别win7系统中usb接口为3.0还是2.0的方法

    现如今USB3.0数据接口变得越来越流行,而市面上就会出现大量的usb3.0数据接口的产品,但是usb2.0数据接口还是大量存在,对于USB3.0的传输速度更快一些,但是我们在使用的时候要如何辨别us ...

  • 教你如何快速辨别电脑公司win7系统中usb接口为3.0还是2.0

    教你如何快速辨别电脑公司win7系统中usb接口为3.0还是2.0

  • java中的接口实例及其讲解

    操作方法 01 首先我们来实现一个简单的接口的定义. interface usb{ public void print(); } 在接口中不可以实现函数的方法,也就是不可以如下这样做. interfa ...

  • java中接口是什么,怎么实现接口

    有时候我们在使用java编程的时候,想知道接口是什么意思,怎么实现接口,下面来分享一下方法 操作方法 01 第一步我们首先需要知道java中的接口指的是抽象方法的集合,一个抽象类型,一般以interf ...

  • 键盘接口损坏怎么修复?

    按道理说,主板上的键盘接口接上键盘后,又不经常拔插,不应该容易损坏的。但在实际工作中键盘接口损坏的主板却又非常多,大多表现为起初是偶尔启动计算机时主机报键盘错误,按“F1”继续能够正常操作,再后来就是 ...

  • 关于笔记本上的USB接口你必须要掌握的相关知识

    USB接口因支持热插拔、兼容性好、成本不高等特点,许多年来一直受到PC厂商的欢迎,已成为电脑主板上的标配扩展接口。随着技术的进步,USB接口的传输速度也在不断提升,现在的主流PC已经开始普及传输速率更 ...

  • 小设计大用处 笔记本接口知识

      出于便携的考虑,通常笔记本都是采取外部扩展的方式来增加功能和用途,所以丰富的外部扩展接口/端口显得尤为重要。不过还是有许多朋友在购买笔记本的时候对产品接口的认识不是很多,常常被经销商的介绍弄得一头 ...

  • Linux系统中netstat命令的基本使用方法

    在计算中,netstat(网络统计数据)是一个命令行工具,它显示传输控制协议的网络连接(传入和传出),路由表,和一个数字网络接口 (网络接口控制器或者软件定义的网络接口)和网络协议的统计数据.它可在类 ...

  • 电脑USB Type-C接口是什么

    电脑USB Type-C接口是什么