• 胡谈...


    看了Allen Lee,基类与接口混合继承的声明问题,发表一下个人看法。
    先运行如下代码:

    namespace Test
    {
        
    using System ;

        
    interface 接口
        
    {
              
    void 方法();
        }


        
    class 基类:接口
        
    {
             
    public void 方法() 
            
    {
                Console.WriteLine(
    "这是基类的方法哦!");
            }


            
    void 接口.方法()
            
    {
                Console.WriteLine(
    "我是接口专门的实现方法哦,你不要逃避嘛。");
            }

        }


        
    class 没有接口的继承:基类
        
    {
            
    /// <summary>
            
    /// 这里只有通过new才能够用新的方法来覆盖
            
    /// </summary>

            public new void 方法()
            
    {
                Console.WriteLine(
    "我只能够使用 new 来屏蔽它,不过,在IDesign的编程规范中,不推荐用 new。");
            }

        }


        
    class  有接口的继承: 基类, 接口
        
    {
             
    void 接口.方法() 
            
    {
                Console.WriteLine(
    "这就叫做接口的重映射,这只是技巧性的东西而已。");
            }
     
        }


        
    class TestClass
        
    {
            [STAThread]
            
    static void Main(string[] args)
            
    {
                基类 c1 
    = new 基类();
                c1.方法();

                接口 i1 
    = new 基类();
                i1.方法();

                Console.WriteLine();

                没有接口的继承 c2 
    = new 没有接口的继承();
                c2.方法();

                接口 i2 
    = new 没有接口的继承();
                i2.方法();

                Console.WriteLine();

                有接口的继承 c3 
    = new 有接口的继承();
                c3.方法();

                接口 i3 
    = new 有接口的继承();
                i3.方法();

                Console.Read();
            }

        }

    }


    运行结果如下:
    这是基类的方法哦
    我是接口专门的实现方法哦,你不要逃避嘛。

    我只能够使用 new 来屏蔽它,不过,在IDesign的编程规范中,不推荐用 new。
    我是接口专门的实现方法哦,你不要逃避嘛。

    这是基类的方法哦
    这就叫做接口的重映射,这只是技巧性的东西而已。
  • 相关阅读:
    Windows服务的快速搭建与调试(C#图解)
    HttpWebRequest采集读取网站挂载Cookie的通用方法
    javascript数字格式化通用类——accounting.js使用
    entity framework框架生成摘要文档为空(没有元数据文档可用)的bug解决方案
    Jquery取得iframe中元素的几种方法Javascript Jquery获取Iframe的元素、内容或者ID,反之也行!
    常用Sql整理笔记
    字符串循环移位
    C++ STL体系结构、 编程方法及存在的问题
    二维数组的分配以及数组指针数组
    C++构造函数详解及显式调用构造函数
  • 原文地址:https://www.cnblogs.com/William_Fire/p/65263.html
Copyright © 2020-2023  润新知