一、对象模型

      在ruby程序中,对象仅仅是其大世界的一个公民而已,除了对象还有其他语言构件,比如类(class)、模块(module)以及实例变量(imstance variable)等,元编程操控的就是这些语言构件。所有语言构件存在于其中的系统称为对象模型,它是ruby的灵魂。

      (1)对象由一组实例变量和一个类的引用组成

      (2)对象的方法存在于对象所属的类中(从类的角度,它们叫做实例方法)

      (3)类本身是class类的对象。类的名字不过是一格常量而已

      (4)class类是module的子类,一个模块基本上是由一组方法组成的包。类除了具有模块的特性之外,还可以被实例化(通过new()方法)及被组织为层次结构(通过它的superclass()方法)

      (5)常量像文件系统一样,是按照树形结构组织的。其中模块和类的名字扮演目录的角色,其他普通的常量则扮演文件的角色

      (6)每个类都有一个祖先链,这个链从自己所属的类开始向上直到BasicObject类结束

      (7)当调用一个方法时,ruby首先向右一步来到接收者所属的类,然后一直向上查找祖先链,直到找到该方法,或者达到链的顶端为止

      (8)每当类包含一个模块时,该模块会被插入到祖先链中,位置在该类的正上方

      (9)当调用一个方法时,接收者会扮演self的角色

      (10)当定义一个模块(或者类)时,该模块扮演self的角色

      (11)实例变量永远都被认定为self的实例变量

      (12)任何没有明确指定接收者的方法调用,都当成是调用self的方法



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ArcGIS Engine是一种GIS开发平台,它提供了一套对象模型来处理地理数据和地图操作。ArcGIS Engine的对象模型图描述了该平台的不同组件和类之间的关系。 在ArcGIS Engine的对象模型图中,最核心的对象是EngineApplication对象。它是整个引擎的入口点,用于初始化和控制整个应用程序的生命周期。 在引擎中,最基本的地理数据对象是Workspace,它表示一个地理数据库或文件,可以包含多个数据集和表。Workspace可以通过使用工作空间工厂类(WorkspaceFactory)来创建。 数据集包括要素类(FeatureClass)、栅格数据集(RasterDataset)等。要素类是地理要素的集合,可以包含点、线、面等几何类型的地理数据,而栅格数据集则是由像素组成的栅格数据。 要素类是构建地图的基本单位,而地图又是由多个图层(Layer)组成的。图层可以是要素图层(FeatureLayer)或栅格图层(RasterLayer),它表示地图上的可视化对象。 在引擎中,还有一些用于地图和图层显示的类,如MapControl和PageLayoutControl。MapControl用于在窗口中显示地图,并提供地图交互操作的功能,而PageLayoutControl用于生成印刷质量的地图布局。 除了地图和图层,引擎还提供了一些用于地理分析和处理的类,如空间分析工具(SpatialAnalyst)和地图代数工具(MapAlgebra)。这些类可以进行空间查询、缓冲区分析、栅格代数运算等。 总之,ArcGIS Engine的对象模型图涵盖了引擎的各种组件和类之间的关系,从而提供了灵活且强大的GIS开发平台,使开发人员能够进行地理数据管理、地图可视化和地理分析等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值