C#接口的使用

扫码查看
、接口:

    接口与抽象类一样,也是表示某种规则,一旦使用了该规则,就必须实现相关的方法。对于C#语言而言,由于只能继承自一个父类,因此若有多个规则需要实现,则使用接口是个比较好的做法。

、接口的定义

interface 接口名

{

    方法声明;

}

、不同接口中若有多个相同名称的方法,则需要显式指定接口名,例如:

、接口的使用

使用接口也可以实现多态。

代码如下:

class Program

{

    static void Main(string[] args)

    {

        //提供三个类,完成工资的计算

        List<ICalu> list = new List<ICalu>();

        list.Add(new Boss());

        list.Add(new Clert());

        list.Add(new Clert());

        list.Add(new Customer());

        foreach (ICalu emp in list)

        {

            emp.Calu(); //多态

        }

    }

}

class Boss : ICalu

{

    public  void Calu()

    {

        Console.WriteLine("计算老板工资");

    }

}

class Customer : ICalu

{

    public  void Calu()

    {

        Console.WriteLine("计算客户工资");

    }

}

class Clert : ICalu

{

    public  void Calu()

    {

        Console.WriteLine("计算职员工资");

    }

}

interface ICalu

{

    void Calu();

}

、接口应用场合举例

 、接口demo

using System;

using System.Collections.Generic;

using System.Linq; using System.Text;

namespace ConsoleApplication1 {

    class Program     {

    static void Main(string[] args)         {

         List<IShow> list = new List<IShow>();

       list.Add(new Map());

        list.Add(new Voice());

          list.Add(new Video());

         list.Add(new ThreeD());

            foreach(IShow ishow in list)             {

           ishow.Show();             }

      }

   }

    interface IShow     {

     void Show();     }

  public class Map:IShow     {

     public void Show()

   {

      Console.WriteLine("显示图片");         }

}

   public class Voice : IShow     {

     public void Show()         {

          Console.WriteLine("播放声音");         }

    }

  public class Video : IShow     {

      public void Show()

      {

    Console.WriteLine("显示视频");         }

   }     public class ThreeD : IShow     {

       public void Show()         {

         Console.WriteLine("3D交互");         }

}

}
04-05 03:02
查看更多