C#接口

it2022-05-05  211

接口(C# 参考)   接口只包含只有方法,属性,索引器(有参属性),事件四种成员。方法的实现是在实现接口的类中完成的,如下面的示例所示:   interface ISampleInterface   {   void SampleMethod();   }   class ImplementationClass : ISampleInterface   {   // Explicit interface member implementation:   void ISampleInterface.SampleMethod()   {   // Method implementation.   }   static void Main()   {   // Declare an interface instance.   ISampleInterface obj = new ImplementationClass();   // Call the member.   obj.SampleMethod();   }   }   ---------------------------------------------------------------------------------------------------------    备注:   接口可以是命名空间或类的成员,并且可以包含下列成员的签名:    ·方法   ·属性   ·索引器   ·事件   一个接口可从一个或多个基接口继承。   当基类型列表包含基类和接口时,基类必须是列表中的第一项。   实现接口的类可以显式实现该接口的成员。显式实现的成员不能通过类实例访问,而只能通过接口实例访问。   ---------------------------------------------------------------------------------------------------------    示例:   下面的示例演示了接口实现。在此例中,接口 IPoint 包含属性声明,后者负责设置和获取字段的值。Point 类包含属性实现。   // keyword_interface_2.cs   // Interface implementation   using System;   interface IPoint   {   // Property signatures:   int x   {   get;   set;   }   int y   {   get;   set;   }   }   class Point : IPoint   {   // Fields:   private int _x;   private int _y;   // Constructor:   public Point(int x, int y)   {   _x = x;   _y = y;   }   // Property implementation:   public int x   {   get   {   return _x;   }   set   {   _x = value;   }   }   public int y   {   get   {   return _y;   }   set   {   _y = value;   }   }   }   class MainClass   {   static void PrintPoint(IPoint p)   {   Console.WriteLine("x=[0], y=[1]", p.x, p.y);// 把[] 改成 {}   }   static void Main()   {   Point p = new Point(2, 3);   Console.Write("My Point: ");   PrintPoint(p);   }   }    输出   My Point: x=2, y=3

转载于:https://www.cnblogs.com/liyugang/archive/2009/10/15/1583814.html


最新回复(0)