C# Interface(接口)

今天讲一讲C#当中的Interface,中文叫接口,但是我并不喜欢称之为接口,我更喜欢叫Interface。因为称呼为接口很容易导致歧义,比如我们的一个函数,我们可以称之为函数,方法,api或者接口。很多人习惯将方法称之为接口,本质上也没毛病。

之前看过很多文章,听到过最多的解释接口的作用的就是,接口是一种规范,其实这并没错,很多说法其实也都没错,只是说初学者能不能理解罢了。

其实在初学的时候,我建议大家在写代码之前先做需求分析,然后画类图,最后再去书写代码,因为其实本质上,我们做的就只是翻译工作,将我们的逻辑转换成代码,所以当我们的思路理清之后,语法基础又过关的情况下,那么这是肯定可以写出来的,而且画了类图之后,会使整个逻辑架构更加清晰。

而我们在画类图的时候,常常会去描述每个类中的属性和方法。我们画类图,其实就是在设计,这个类应该具有哪些方法和属性,但是我们并不知道方法具体是怎么样的,就像我现在要去一个地方,我需要坐车过去,但是具体坐什么车,的士还是摩托车?我不清楚,我的目的是要到达终点,那么我需要他能载着我到达目的地即可。所以说,这是抽象的。所以类图中的方法就是所谓的接口,我们只要他应该需要具备什么功能。所以,接口是用来做设计的。

上面说的接口是用来做设计的,但是实际上,在代码当中他好像并没有提供什么作用,还会徒增代码。但事实真的是这样吗?

上面我们说了,接口是抽象的,因此,比如还是上面的例子,我想做车,我想做的士就做的士,想做摩托就做摩托。因为声明接口时我们并没有决定做那辆车。所以我们只需要修改传入的对象即可改变行为。这就是依赖抽象而不依赖于具体。

接口算是一个比较进阶的东西,初学者要理解确实不是很容易,建议大家多画类图,多做分析。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值