欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【C# 接口的隐式与显示实现及适应场景】,下面是详细的讲解!
C# 接口的隐式与显示实现及适应场景
以前在用到接口时,从来没注意到接口分为隐式实现与显示实现。昨天在浏览博客时看到相关内容,现在根据自己的理解记录一下,方便日后碰到的时候温习温习。通俗的来讲,“显示接口实现”就是使用接口名称作为方法名的前缀;而传统的实现方式称之为:“隐式接口实现”。费话不说,例子如下:
类和接口都能调用到,事实上这就是“隐式接口实现”。
那么“显示接口实现”是神马模样呢?
既然显示接口实现这么不给力,为什么还要存在了,凡事存在即合理。在实际项目中,有时某个类往往会继承多个接口,而接口中往往会有一些相同名称、参数与类型的值。通过显式接口实现可以为避免一些不必要的歧义(我在项目中碰到的不多,可能是因为项目太小的原因吧)。
显示接口实现与隐式接口实现的适应场景
当类实现一个接口时,通常使用隐式接口实现,这样可以方便的访问接口方法和类自身具有的方法和属性。
当类实现多个接口时,并且接口中包含相同的方法签名,此时使用显式接口实现。即使没有相同的方法签名,仍推荐使用显式接口,因为可以标识出哪个方法属于哪个接口。
隐式接口实现,类和接口都可访问接口中方法。显式接口实现,只能通过接口访问。
关于C# 接口的隐式与显示实现及适应场景的用户互动如下:
相关问题:c#显示实现接口到底啥意思
答:比如有接口: interface IDemo{ void Func();}显式实现就是: class Demo : IDemo{ public void Func() { } }隐式实现就是: class Demo : IDemo{ void IDemo.Func() { } } 显式实现的方法既可以通过接口调用,又可以通过类调用;隐式实现的方法... >>详细
相关问题:C#中接口成员的显示实现和隐式实现有什么区别?
答:隐式实现的话实现的方法属于实现的类的,可以直接通过类的对象访问,显式实现的话方法是属于接口的,可以看成是寄托在类中实现的,访问这些方法时要先把对象转换成接口对象,然后通过接口对象调用,比如Int32显式实现了IConvertible接口,调用IC... >>详细
相关问题:C#中,什么是接口的显式执行(实现)和 隐式执行(...
答:关于接口的实现问题,我尽量通俗的解释下: 假设你设定了某个接口Interface I1; 里面有个需要实现的方法, 如 int func1(); 那么, 进一步的,你写了一个类C1, 去实现这个接口I1, 此时就有两种实现的方法: 方法1:显示实现, public int func1(){...... >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【ASP】ASP.NET中内嵌页面代码的一个问题-NET-内
- 【As】Asp.net中的页面乱码的问题-sp--pn-ne-et
- 【增加记录】asp.net中获取新增加记录的ID Access
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【404页面】ASP.NET设置404页面返回302HTTP状态码
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
