隐式和显式接口的区别

来源:互联网 发布:sql stuff用法 编辑:程序博客网 时间:2024/06/05 02:18

隐式和显式接口的区别


(隐式的实现不再探讨,只剖析显式的接口实现。)

定义的接口如下:两个接口的方法名及参数都相同

interface ICustomA{    Int32 CompareTo(string obj);}interface ICustomB{    Int32 CompareTo(string obj);} 

类的实现方式如下:一个默认的(类本身的方法),两个显式实现的。

public class Number : ICustomA, ICustomB{    // 默认方法    public int CompareTo(string obj)    {        return 0;    }    // 显式实现ICustomA    int ICustomA.CompareTo(string obj)    {        return 0;    }    // 显式实现ICustomB    int ICustomB.CompareTo(string obj)    {        return 0;    }}

三个方法,对应方式的调用方式如下:

    static void Main(string[] args)    {        Number p = new Number();        p.CompareTo("默认");        ICustomA pA = p as ICustomA;        pA.CompareTo("显A");        ICustomB pB = p as ICustomB;        pA.CompareTo("显B");    }

CLR读书笔记(2016/6/26 21:26:18)

0 0
原创粉丝点击