C#中接口的显式和隐式实现

来源:互联网 发布:淘宝手机怎么网页版 编辑:程序博客网 时间:2024/06/05 10:12

隐式实现方式是默认的方式,即在继承的类中,直接编写接口函数的实现方法。

显示实现方式,是在继承的类中,需要显示的标识接口函数的对应接口,并且在未来使用这个函数时,需要使用接口定义的方式调用。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            MyClassAB myClass = new MyClassAB();
            myClass.MyFunctionB();//隐式实现接口函数的调用
            myClass.MyFunctionAB(); //隐式实现接口函数的调用


            InterfaceB myClassB = new MyClassAB(); 
            myClassB.MyFunctionAB();//显式实现接口函数的调用


            InterfaceA myClassA = new MyClassAB();
            myClassA.MyFunctionAB();//没有显式实现接口函数,所以调用的是隐式实现的函数
        }


    }
    interface InterfaceA


        {
    void MyFunctionA();
    void MyFunctionAB();
        }


    interface InterfaceB


    {
        void MyFunctionB();
        void MyFunctionAB();
    }


    public class MyClassAB: InterfaceA,InterfaceB
    {
         public void MyFunctionA()//隐式实现接口函数
        {
            Console.WriteLine("This is function A");
        }


        public void MyFunctionB()//隐式实现接口函数
        {
            Console.WriteLine("This is function B");
        }


        public void MyFunctionAB()//隐式实现接口函数
        {
            Console.WriteLine("This is function AB");
        }


        void InterfaceB.MyFunctionAB()//显式实现接口函数
        {
            Console.WriteLine("This is function AB from InterfaceB");
        }
    }
}

0 0
原创粉丝点击