zoukankan      html  css  js  c++  java
  • 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 +"说话:汪汪汪!!!");
           }
       }

    运行结果截图

  • 相关阅读:
    jsp三种注释方法
    MyEclipse 2015优化技巧
    查看是否安装jdk及路径
    hibernate中save()、get()、load()、update()、saveorupdate()、merge()等方法
    MyEclipse更改项目名web发布名字不改问题
    try-catch-finally try中有rerun 是否执行finally
    使用HTML制作网页
    rs(0)与rs("字段名")的区别
    金蝶K3 wise 插件二次开发与配置
    初识触发器(2)
  • 原文地址:https://www.cnblogs.com/chunhui212/p/5915273.html
Copyright © 2011-2022 走看看