[C#] C#显式地实现接口成员显式地实现接口成员 →→→→→进入此内容的聊天室

来自 , 2019-07-07, 写在 C#, 查看 124 次.
URL http://www.code666.cn/view/5adaacd4
  1. // explicit1.cs
  2. interface IDimensions
  3. {
  4.    float Length();
  5.    float Width();
  6. }
  7.  
  8. class Box : IDimensions
  9. {
  10.    float lengthInches;
  11.    float widthInches;
  12.  
  13.    public Box(float length, float width)
  14.    {
  15.       lengthInches = length;
  16.       widthInches = width;
  17.    }
  18.    // 显式接口成员实现:
  19.    float IDimensions.Length()
  20.    {
  21.       return lengthInches;
  22.    }
  23.    // 显式接口成员实现:
  24.    float IDimensions.Width()
  25.    {
  26.       return widthInches;      
  27.    }
  28.  
  29.    public static void Main()
  30.    {
  31.       // 声明类实例“myBox”:
  32.       Box myBox = new Box(30.0f, 20.0f);
  33.       // 声明接口实例“myDimensions”:
  34.       IDimensions myDimensions = (IDimensions) myBox;
  35.       // 打印出盒子的尺寸:
  36.       /* 下列注释行将产生编译
  37.          错误,因为这些行试图从类实例访问显式实现的
  38.          接口成员:                    */
  39.       //System.Console.WriteLine("Length: {0}", myBox.Length());
  40.       //System.Console.WriteLine("Width: {0}", myBox.Width());
  41.       /* 从接口的实例调用方法,
  42.          以打印出盒子的尺寸:                         */
  43.       System.Console.WriteLine("Length: {0}", myDimensions.Length());
  44.       System.Console.WriteLine("Width: {0}", myDimensions.Width());
  45.    }
  46. }
  47.  
  48.  
  49.  
  50. //csharp/4913

回复 "C#显式地实现接口成员显式地实现接口成员"

这儿你可以回复上面这条便签

captcha