C#接口的显示和隐式实现
早上骑车上班走到半路发现手机忘带了,这年代兜里没装一分现金,吃饭都要刷手机,上班时间无聊了不能玩手机更是大问题,所以果断掉头拿手机。取完手机刚出门看这天阴沉沉的貌似要下雨,没雨衣,骑车又不能打伞,上次就是上班路上被突如其来的大雨湿了身,不敢犹豫,买了早餐赶紧打包带走,骑上车一路狂奔到公司,刚到公司楼下,雨就哗哗的下大了,衣服没被淋湿却被汗水浸湿了,不过没被雨淋还是有点小庆幸。等到吃了早餐,汗水退去,那就巩固巩固基础知识吧,这次总结一下接口的显示实现和隐式实现,我就总是习惯把这两个方式搞混张冠李戴,不知道哪个叫“显示”哪个叫“隐式”,其实吧也没必要死记他们的名字,只要看到他们知道怎么用就可以了,也就是只要看到他们知道他们能干什么就可以了。最近总结的都是很基础的理论知识,这些往往会被程序员们忽略,但却是编程语言的精华,要建高楼根基不稳怎么行。话不多说贴上代码
public class Program
{
static void Main(string[] args)
{
//显式显示调用方式
ISpeakVoice man = new ManSpeak();
man.SpeakVoice(); //隐式显示调用方式
DogSpeak dag = new DogSpeak();
dag.SpeakVoice(); ISpeakVoice ispeak = new DogSpeak();
ispeak.SpeakVoice(); Console.ReadLine();
}
} public interface ISpeakVoice
{
void SpeakVoice();
} public class ManSpeak : ISpeakVoice
{
public string Name = "人类";
void ISpeakVoice.SpeakVoice() //显示实现
{
Console.WriteLine(this.Name + "说话:哈哈哈!!!");
}
} public class DogSpeak : ISpeakVoice
{
public string Name = "小狗";
public void SpeakVoice() // 隐式实现
{
Console.WriteLine(this.Name +"说话:汪汪汪!!!");
}
}
运行结果截图

C#接口的显示和隐式实现的更多相关文章
- interface Part3(实现:显示和隐式)
		
1. 接口的实现实际上和类之间的继承是一样的,也是重写了接口中的方法,让其有了具体的实现内容. 2. 但需要注意的是,在类中实现一个接口时必须将接口中的所有成员都实现,否则该类必须声明为抽象类,并将接 ...
 - Intent  显示意图  隐式意图
		
//显式意图 :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) // 一般激活自己应用的组件的时候 采用显示意图 //隐式意图: 只需要指定要动作和数据就可以 ( 好处应用程序之 ...
 - c# .net 关于接口实现方式:隐式实现/显式实现!
		
以前在用到接口时,从来没注意到接口分为隐式实现与显示实现.昨天在浏览博客时看到相关内容,现在根据自己的理解记录一下,方便日后碰到的时候温习温习. 通俗的来讲,“显示接口实现”就是使用接口名称作为方法 ...
 - C#  转换符的重载  显示、隐式转换
		
class Complex { //保存转换的值 Int32 v; public Complex(Int32 x) { v = x; } public Int32 ToInt32() { return ...
 - Android中显示和隐式Intent的使用
		
显示启动activity ...
 - label标签的显示和隐式关联问题
		
按钮的html <!-- 学校 --> <div class="layui-inline"> <label class="layui-for ...
 - angularJS1笔记-(7)-控制器的合理使用(显示和隐式的依赖注入)
		
AngularJS依赖注入 1.隐式注入:不需要开发人员干预,angularJS自动根据参数的名称识别和注入数据 app.controller("myCtrl".function( ...
 - Android中Intent的显示和隐式使用
		
Android应用程序中组件之间的通信都少不了Intent的使用,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件, ...
 - 【Selenium】显示、隐式等待
		
显示等待 WebDriverWait 超时抛出TimeOutException,默认500毫秒 public class WaitToReturnElement { /* * 设置超时时间为5秒,返回 ...
 
随机推荐
- ABP源码分析十六:DTO的设计
			
IDTO:空接口,用于标注Dto对象. ComboboxItemDto:用于combobox/list中Item的DTO NameValueDto<T>/NameValueDto:用于na ...
 - ABP源码分析四十一:ZERO的Audit,Setting,Background Job
			
AuditLog: 继承自Entity<long>的实体类.封装AuditLog的信息. AuditingStore: 实现了IAuditingStore接口,实现了将AuditLog的信 ...
 - javascript中字符串的比较规则
			
弄清这个还是很重要的,在字符排序中很有用处 非空字符串 > 空字符串 从第一个字符的charCode开始比较,大的就大 所有的字符都相同,就比较长度,长的大 '0'>'' '2'>' ...
 - lr文件下载脚本(文件参数化重命名)
			
http://wenku.baidu.com/link?url=6oiIadyF9eFS4VshKbfJDnxrBh2IX919ndi0JO8yoqTRNRNIpavFrZJ9LPVb-FBSfbRY ...
 - ASP.NET MVC Anti-XSS方案
			
1:Form提交模式 在使用Form提交时,MVC框架提供了一个默认的机制.如果数据中含有恶意字,则会自动转向出错页面. 2:Ajax+JSON提交模式. MVC框架未提供对于Json数据的Ant ...
 - 03.Web大前端时代之:HTML5+CSS3入门系列~H5功能元素
			
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 2.功能元素 1.hgroup 对网页或区段(secti ...
 - 百度地图API的使用
			
------------------自说自话----------------------------- 好奇怪,习惯性使用有道云笔记记录心得与知识后就很少用博客园来记录了. 但是后来想想,有些东西还是 ...
 - 千回百折:百度Java研发offer斩获记和经验分享
			
起因 面试过程 等待offer的过程中悟道 Java面试常考知识点个人总结 过程 百度——作为国内互联网的巨头之一,最近的一些风波对其褒贬不一,但是类似事件不是第一次发生,也绝对不是最后一次,对于真的 ...
 - Linux驱动开发——pr_fmt的用法
			
作者:彭东林 邮箱:pengdonglin137@163.com 在阅读kernel代码的时候,总是看到有很多驱动都在第一行定义pr_fmt,闲来没事,分析了一下, 发现,确实挺方便的.下面记录分享一 ...
 - jQuery对象和DOM对象的区别
			
jQuery对象和DOM对象使用说明,需要的朋友可以参考下.1.jQuery对象和DOM对象第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery ...