zoukankan      html  css  js  c++  java
  • C#接口

      接口(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

  • 相关阅读:
    select移动选项
    jFinal+AngularJs未来javaEE开发的趋势——程序员的福音 .
    MVC框架PK:Angular、Backbone、CanJS与Ember
    错误 1093 You can't specify target table 'table name' for update in FROM clause
    Angularjs开发一些经验总结
    需求调研的步骤、方法
    MyEclipse如何跟踪调试
    需求入门: 软件需求的三个层次
    JAVA的Random类(转)
    Java中从[1,36]随机生成7个不重复的数字,放入一个数组中
  • 原文地址:https://www.cnblogs.com/liyugang/p/1583814.html
Copyright © 2011-2022 走看看