ArcGIS Engine 10 开发手册(2-1)ArcEngine 接口编程

本文目录
  • 正文

使用 ArcGIS Engine,也就意味着使用里面的接口,那么什么是接口呢?在面向对象的编程中,我们都 会接触到这个玩意儿,我们知道面向对象有三大特性 封装,继承,多态,相信很多人在学习多态的时候, 会接触接口。接口可以用这样一句话来描述“接口就是包含一系列不被实现的方法.而把这些方法的实现交给继承它的类.”,这句话看起来很晦涩,没关系,我们通过下面一个例子说明 我定义了一个接口 IPeople using System;

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

namespace InterfaceTest {
  interface IPeople {
    void gender();
  }
}

这个接口里面有一个性别的方法,这个只对方法进行了定义,而方法内却没有内容,也就是说,通过 这个接口的这个 gender 方法,我们不能知道它到底干什么,但是要知道这个 gender 到底是干什么用的,那 么就要看实现了这个方法的类。同理我定义两个类,分别实现这个接口。

Boy 类代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace InterfaceTest {
  class Boy : IPeople
  {
    public void gender ()
    {
      Console.WriteLine ("I’m a boy.");
    }
  }
}

Girl 类代码:

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

namespace InterfaceTest
{
  class Girl : IPeople
  {
    public void gender ()
    {
      Console.WriteLine ("I’m a girl.");
    }
  }
}

通过上面的两个类,我们就很清楚的看到这个方法的作用了,我们也可以看到一个接口可以被多个类 实现。现在我们在一个主函数里分别调用这两个类,代码如下:

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

namespace InterfaceTest
{
  class Program
  {
    static void Main (string[] args)
    {
      IPeople Person; // 声明接口变量
      Person = new Boy (); // 实例化,接口变量中存放对象的引用
      Person.gender (); // 这个调用的是Boy中的gender方法
      Person = new Girl (); // 实例化,接口变量中存放对象的引用 
      Person.gender(); // 这个调用的是Gril中的gender方法 Console.ReadLine();
    }
  }
}

我们运行一下这个,看到如下的效果:

ArcGIS Engine 10 开发手册全集

ArcGIS Engine 10 开发手册全集: ArcGIS Engine 10 开发手册

如您有疑问,可在文末留言,或到QQ群提问。

本站QQ群:291616564 麻辣GIS

微信公众号:malagis,扫描右边二维码直接关注。

微信捐助麻辣GIS 支付宝捐助麻辣GIS

如果本文对您有所帮助,欢迎对我们团队进行打赏捐助,让我们在传播3S的路上可以走得更远。


作者:,GIS爱好者。
分享本文,请您带上本文链接

发表评论