精华内容
下载资源
问答
  • 对象模型图(OMD)

    千次阅读 2016-01-25 15:26:25
    原文地址:对象模型图(OMD)作者:安睡OMD是基于OMT(Object Modeling Technique)的表示方法,先来看看OMD能帮我们做些什么?  1.该类支持哪些接口;  2.完成任务需要哪些对象;  3.如何使用该类的对象;  ...
    学习AE必备!
    原文地址:对象模型图(OMD)作者:安睡
    OMD是基于OMT(Object Modeling Technique)的表示方法,先来看看OMD能帮我们做些什么?
      1.该类支持哪些接口;
      2.完成任务需要哪些对象;
      3.如何使用该类的对象;
      4.是否可以直接实例化类;
      5.接口有哪些方法和属性;
      6.是否有其它类也支持该接口;
      7.对象间的关系。
    [转载]对象模型图(OMD)
    OMD中的类有:
      抽象类(Abstract Class):不能用于创建对象,但可以用来指定子类。(通过类型继承)。
      组件类(CoClass):可以直接创建对象。例如:IMap pMap=new MapClass();
      普通类(Class):不能直接创建对象,但可以作为另一个类的属性或者通过另一个类的实例化来创建对象。
    在OMD中的关系类型主要有:
      类型继承(Type inheritance)
      创建(Instantiation)
      组成(Composition):对象间的主次关系
      关联(Associations)
    [转载]对象模型图(OMD)


    ArcObjects UML关系符号例子
    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)

    [转载]对象模型图(OMD)





    展开全文
  • AE中对象模型图阅读

    千次阅读 2016-11-14 14:07:59
    AE为了帮助我们方便的使用这些,将这些分散在不同的类库中,为了便于我们阅读,AE提供了一系列的对象模型图,也就是OMD。一下内容参考:http://www.cnblogs.com/zyf7630/archive/2009/10/01/1577298.html

    使用AE开发,也就意味着我们要和接口打交道,AE中提供的接口和类加起来估计上万,我没用统计,但是用过AE的人,知道这个数字不为 过。AE为了帮助我们方便的使用这些,将这些分散在不同的类库中,为了便于我们阅读,AE提供了一系列的对象模型图,也就是OMD。一下内容参考:http://www.cnblogs.com/zyf7630/archive/2009/10/01/1577298.html

    补充几个名词概念:
    UML:Unified Modeling Language 统一建模语言,是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
    OMD:Object model diagrams 对象模型图表。

    首先来看看OMD能帮我们做什么?
    1. 该类支持哪些接口;
    2. 完成任务需要哪些对象;
    3. 如何使用该类的对象;
    4. 是否可以直接实例化类;
    5. 接口有哪些方法和属性;
    6. 是否有其它类也支持该接口;
    7. 对象间的关系

    下面图示中,便是贯穿本书的对象模型图的钥匙。

    这些符号是基于UML 画图工具创建的,UML 符号是面向对象分析和设计的工业图样标准。

    对象模型图中提供的信息非常多,是对象浏览器中信息的重要补充。Visual Basic,或者其它的开发环境,都会列出所有的类和成员,但不会指明这些类之间的关系。所以,对象模型图是非常有利于读者对ArcInfo 组件的理解的!

    本书使用UML 来描述ArcInfo 组件,即ArcObjects,并描述你能够创建的数据模型。

    以下详细说明。

    1. 类和对象

    在UML 图中有三种类型的类:抽象类(abstract class)、可创建类(createable class)与可实例化类(instantiable class)。

    抽象类不能用以创建新对象,但可以用来指定子类。举个例子,“line”(线)是“primaryline”(干线)和“secondary line”(副干线)的抽象类。

    可创建类指的是那些你能够直接使用开发环境中的对象定义语法来创建对象。比如在Visual Basic 中是这样书写:Dim As New <object> 或者CreateObject <object>。

    可实例化类不能够直接创建新对象,但是这种类的对象能够作为其它对象的属性被创建或是从其它类的方法中创建。------比较难理解。

    2. 关联

    在抽象类、可创建类和可实例化类之间,有几种存在的关联(或称关系)。

    联系(association)便描述了类之间的关联。在两端的类中可以定义多重性( Multiplicity)关联。

    在这张图上,一个业主能有拥有一块或多块宗地;同样地,一块宗地可以被一个或多个业主所共有。

    多重性关联就是限制对象类与其它对象关联的数目关系。以下是用于多重性关联的符号:

    1 —— 一个并且只有一个,这种多样性是可选的;如果不标明,则默认为“1”
    0..1 —— 零个或一个
    M..N —— 从M 到N(正整数)
    *或者0… * —— 从零到任意正整数
    1… * —— 从一到任意正整数

    类继承(type inheritance)定义了专门的类,它们拥有超类的属性和方法,并且同时也有自身的属性和方法。

    上图说明primary line 和secondary line 是line 的一种类型。

    实例化(Instantiation)指定一个类的对象有这样的方法,它能够创建另外一个类的对象。

    pole 对象有一个方法能够创建transformer 对象。

    聚合(Aggregation)是一种不对称的关联方式,在这种方式下一个类的对象被认为是一个“整体”,而另一个类的对象被认为是“部件”。

    一个transformer bank 正好有3 个transformer 。在这个图中transformer 能和一个transformer bank 相关联,但当transformer bank 移除以后,transformer 依然能够存在。

    组成(Composition)是一种更为强壮的聚合方式,此种方式下,“整体”对象控制着“部分”对象的生存时间。

    一个pole 包含一个或多个crossarm。在这个图中当pole 被移除后,crossarm 就不能再使用了。因为pole 控制着crossarm 的生存时间。

    在安装完AE后,我们就可以在相关目录中找到AE的OMD图,
    一般在 安装目录\DeveloperKit\Diagrams下
    下为ArcEngine中OMD的截图:

    AE中对象模型图阅读(转摘) - Cherish - Perfect

    其中
    OMD中的符号
    一个三角形符号 表示继承
    菱形的黑色小块 表示组成
    虚线前头带个箭头 表示用来创建
    * 表示对应关系1:N
    一条直线表示联合

    类的类别:
    抽象类:不能创建或实例化,从来没有一个抽象类的实例
              用于定义子类的公共接口,子类继承其定义的接口。
              OMD符号为:二维的内部有阴影的矩形。
    实例化类:不能创建,从别的对象获得实例。
              OMD符号为:3D矩形内部没有阴影。
    可创建的类:用New关键字创建对象或者从别的对象获得运行实例。
              OMD符号为:带阴影的3D矩形符号。

    在这些符号中棒棒糖类型的图标表示接口,另外还有一个词语,叫做虫洞.虫洞表现了图表与图表之间的连接,这些OMD被分在不同的不同的表里,但是这事实上是一个模型

    AE中对象模型图阅读(转摘) - Cherish - Perfect
     

    但是这些只表示了对象之间的关系,但是我们知道对象还有属性和方法的,这个可以在开发帮助中看到,如下:

    AE中对象模型图阅读(转摘) - Cherish - Perfect

    属性和方法:
    属性:哑铃状的图标,Read(左侧的哑铃)和write(右侧的哑铃)
    方法:指向左侧的箭头

    ===========================
    个人感觉在OMD图中比较难理解的就是可实例化类CLASS。我做了以下例子去理解它:

    ArcEngine中 workSpace 就是一个可实例化类,
    WorkSpace不能用new创建,但可以通过WorkSpaceFarctory.Openfromfile()方法来创建.如下:

    IWorkspaceFactory pWorkspaceFactory = new AccessWorkspaceFactoryClass();
    IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(ConnectionString, 0);

    但当我们尝试用New去创建一个Workspace类时,如下:

    IWorkspace pWorkspace = new WorkspaceClass();
    就会出现以下错误:
    “类型”ESRI.ArcGIS.Geodatabase.WorkspaceClass未定义构造函数;

    所以,Class和CoClass的主要区别就是CoClass是带构造函数的Class.以此它可以用New直接创建对象

     

    <="" script.="" <="" script.="" try="" syntaxhighlighter.all();="" issyntaxhighlighted="true;" catch="" (e)="" div="">

    图片1
    展开全文
  • AE的对象模型图OMD。

    内容整理自花利忠教授的课件

    对象模型图(OMD)

    介绍

    对象模型图(Object Model Diagrams)

    1. 该类支持哪些接口;
    2. 完成任务需要哪些对象;
    3. 如何使用该类的对象;
    4. 是否可以直接实例化类;
    5. 接口有哪些方法和属性
    6. 是否有其他类也支持该接口;
    7. 对象间的关系

    AO/AE提供三种类

    类名 创建 OMD符号 说明
    Abstract Class抽象类 不能直接创建新对象,只是用来派生ArcObjects其他类 二维内部有阴影的矩形 抽象类用于定义子类的公共接口,子类继承其定义的接口,OMD中每个抽象类至少有一个子类
    Coclass组件类或可创建类(Component Classes) IMap pMap = new MapClass() 带阴影的3D矩形符号 用new关键字创建对象或者从别的对象获得运行实例
    Class普通类或实例化类 IWorkspaceFactory pWF = new ShapefileWorkspaceFactoryClass();
    IWorkspace pWS = pWF.OpenFromFile(sWorkspacePath,0);
    不带阴影的3D矩形符号 不能直接创建新对象,但能从别的对象的属性或其他类的方法获得实例创建

    类与类的关系

    这里写图片描述

    关系 说明 例子
    依赖关系 一个对象有方法产生另一个对象。前者的周期决定后者的生命周期 蛋有产生鹰的方法,鹰依赖于蛋
    关联关系 关联关系有方向性:单向关联和双向关联 鹰和巢两个对象是松散的关联关系,可以从一个类的对象访问另一个类的对象。当其中一个不存在,另一个不消失
    关联关系可能存在一对多或多对多的关系:一只鹰拥有几个巢,一个巢几只鹰居住
    组合关系 羽毛与翅膀和鹰属于紧密的组合关系,是整体与部分的关系
    羽毛与翅膀是鹰的一部分,当鹰消失的时候,鹰的羽毛与翅膀也不复存在
    羽毛与翅膀的生命周期由鹰对象控制,但羽毛与翅膀的产生不受鹰对象控制
    继承关系 类间的继承是类功能的扩展,父亲具有的任何属性与方法,子类同样具备,且子类在保存父类的属性与行为的基础上增加了自己持有的行为与属性 鹰属于鸟类,是一种继承关系,父类与子类的关系

    OMD符号

    符号类型 符号
    属性和方法 这里写图片描述
    接口 OMD符号 棒棒糖
    这里写图片描述
    虫洞 表现了 图标与图标间的连接关系
    这里写图片描述
    展开全文
  • ArcEngine 入门教程-对象模型图OMD阅读指南

    千次阅读 多人点赞 2019-03-04 23:05:09
    ),打开一个OMD文件,如Geodatabase或Geometry的对象模型图学习学习。 找到抽象类,可创建类,可实例化类,熟悉他们的符号,以及各自的特点。 找到类与类之间的四种关系,熟悉他们的符号,以及每种关系的特点...

    声 明1 : 本人才疏学浅,用郭德纲的话说“我是一个小学生”,如有错误,欢迎讨论,请勿谩骂^_^。
    声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。

    缘起

    个人总结梳理,顺便练练文笔,欢迎点赞!

    开篇有益

    OMD是快速入门ArcEngine的基础,除了要会基础的编程语言,ArcEngine二次开发还需能看懂OMD。

    为什么学习OMD

    A:当然是装逼了!
    B:To young,Too simple!
    

    我个人觉得有如下几点原因:

    1. 工业标准,不看标准直接撸代码的,我敬你们是条汉纸。
    2. OMD可以帮助你整体的学习ArcEngine的架构,OMD相当于是软件的骨骼经脉。
    3. ArcEngine类库那么多,OMD简单易懂的图谱像字典一般帮你快速导航相关的类库。
    4. OMD可以帮助你体验设计大师是如果设计架构的,ArcEngine的OMD中有好多设计模式的理念。
    5. OMD简单清晰的描述了类之间的关系以及类的构造,助你打通经脉。

    学习OMD能知道什么

    A:对象呗,这还有啥不知道的?
    B:你就是个弟弟!
    

    学习OMD我们可以知道如下信息:

    1. 该类支持哪些接口;
    2. 完成任务需要哪些对象;
    3. 如何使用该类的对象;
    4. 是否可以直接实例化类;
    5. 接口有哪些方法和属性;
    6. 是否有其它类也支持该接口;
    7. 对象间的关系

    概念

    UML:全称Unified Modeling Language, 统一建模语言,是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言(ps:推荐看下《Thinking in UML》)。
    OMD:全称Object model diagrams,对象模型图表。
    ArcObjects/ArcEngine 的OMD参考位置D:\Program Files (x86)\ArcGIS\DeveloperKit10.1\Diagrams
    在这里插入图片描述

    OMD详解

    类和对象

    在UML 图中有三种类型的类:抽象类(abstract class)可创建类(createable class)可实例化类(instantiable class)
    抽象类/AbstractClass不能用以创建新对象,但可以用来指定子类
    *如Layer类就是一个抽象类,不可以直接New Layer()创建新对象。,它知识一个抽象的模板类。

    //Layer是抽象类,不能创建,所以执行此句代码会报错
    ILayer pLyr=new Layer();
    

    可创建类/CoClass指的是那些你能够直接使用开发环境中的对象定义语法来创建对象

    //如FeatureLayer类,你可以直接New FeatureLay
    IFeatureLayer pFeaLyr = new FeatureLayer();
    

    可实例化类/Class不能够直接创建新对象,但是这种类的对象能够作为其它对象的属性被创建或是从其它类的方法中创建。(简单说就是他自己不能创建对象,只能由别人创建它的对象)

    //如Workspace类,只能通过IWorkspaceFactory对象创建IWorkspace对象,不能自己New来创建。
    IWorkspaceFactory pWsFactory = new ESRI.ArcGIS.DataSourcesGDB.FileGDBWorkspaceFactory();
    IWorkspace pWs = pWsFactory.OpenFromFile(@"D:\0\dlggc.gdb", 0);
    

    类和类之间的关系

    主要包括:依赖关系关联关系组合关系继承关系四中类型

    1. 依赖关系(可实例化)表示一个对象可以产生(实例化)另外一个对象。图中的虚线箭头表示是实例化关系,如Workspace依赖于WorkspaceFactory,可以通过WorkspaceFactory对象创建Workspace对象,不同的WorkspaceFactory对象可以创建不同的Workspace对象,Workspace会随着WorkspaceFactory的不同而不同。
    2. 关联关系指从一个类的对象访问到另外一个类的对象,它是一种松散的关系。图中的线表示是关联关系。有1对1,1对多,多对1,多对多几种关系。如Fields类和Field类,Workspace类和Dataset类。
    3. 组合关系(组成关系)指其中的一个类对象是另外一个类对象的组成部分,体现了严格的部分和整体的关系,部分和整体的生命周期一样。图中的菱形表示是组成关系,如Map类和Layer类,Map有多个图层组成。
    4. 继承关系:同面向对象中的继承。父类不能直接产生类对象,只能通过派生子类的方法来实现自己,是一种比较强的关系。在图中的空心三角箭头表示是继承关系,比如Layer和FeatureLayer之间就是继承关系。
      在这里插入图片描述

    OMD符号

    在这里插入图片描述

    • 抽象类(AbstractClass):二维的内部有阴影的矩形。如:Dataset类
    • 可创建类/组件类(CoClass):带阴影的3D矩形符号。如:FeatureLayer类
    • 可实例化类/普通类(Class):3D矩形内部没有阴影。如:Workspace类
    • 属性(Property):哑铃状的图标,Read(左侧的哑铃)和write(右侧的哑铃)。(建议延伸阅读关于传值传引用的区别
      • 右侧控件的哑铃代表写入的时候传入的是引用(put by value),相当于是C#中的传值。
      • 如果是实心的哑铃代表写入的时候传入的是值或对象的副本(put by reference),简单来说相当于C#中的传引用,比如ref
    • 方法(Method):指向左侧的箭头。
    • 接口(Interface):棒棒糖类型的图标,接口分为内接口和外接口,内接口为空心棒棒糖,外接口为实心棒棒糖。
      • 内接口主要用来组织COM对象相关的方法和属性,COM对象必须实现所有的接口内容;
      • 外接口用来组织与COM对象相关的事件。
    • 图表之间的连接:虫洞。

    接口跳转(QI)

    在COM中,接口中仅定义了方法,而继承该接口的类中实现了该方法。由于一个接口只能使用自己内部定义的方法,不能越界,就好比一个班级一样,这个班级内有班长,有学习委员,有体育委员,每一位干部负责自己职权范围之内的事情,各位干部相互协作,解决班级内的事情。这班级内的每一位干部就相当于一个接口,而这个班级就相当于实现了这些接口的类。当这个班级的一些事情需要班长处理的时候,我们就执行班长这个接口中定义的方法,当需要学习委员处理的话,我们再将执行权交给学习委员这个接口,这也就是接口之间的互相访问(Query Interface)。通过这个我们大体上对QI有了感性上的认识,下面我们通过实例演示一下。
    我定义了两个接口:

    interface IFavoriteFood
    {
       void Food();
        }
    interface IVoice
        {
           void Voice();
    }
    

    然后定义了一个CatClass的类继承这两个接口,并实现这两个接口中的方法:

    class CatClass : IFavoriteFood, IVoice
        {
            public void Food()
           {
           Console.WriteLine("我喜欢吃老鼠。");
       }
        public void Voice()
       {
           Console.WriteLine("喵,喵,喵...");
       }
      }
    

    下面在主函数中调用,代码如下:

    IVoice pVoice = new CatClass();
    pVoice.Voice();//只能调用IVoice中定义的方法
    IFavoriteFood pFavoriteFood = pVoice as IFavoriteFood;//指向同一个类的接口可以相互转化,也就是QI
    pFavoriteFood.Food();//只能调用IFavoriteFood中定义的方法
    Console.ReadLine();
    

    输出结果:
    在这里插入图片描述
    这块其实很好理解,比如一个类实现了两个接口,从一个接口对象跳转到另外一个接口,调用另外一个接口的方法,这就是QI。
    在这里插入图片描述
    学习的过程中你可以写个QI的例子,自己体验一下:

    //创建IWorkspace对象
    
    //用创建好的IWorkspace对象跳转到IDataset对象上,其实就是As转换
    
    //调用IDataset接口中的方法 
    
    

    ArcEngine类库

    ArcObjects组件库有4500多个对象可供开发人员调用, ArcGIS 10.3版本包含的类和接口个数汇总如下:
    在这里插入图片描述
    ArcGIS Engine开发中,为了更好的管理这些COM对象,ESRI将这些COM对象放在不同的组件库中,而它们被物理的放在bin目录下的dll中,而逻辑上被分散到不同的命名空间中,下面我们详细对一些类库进行介绍。

    Version
    Version库是ArcGIS 10新出来的一个类库,该类库包含了将独立应用程序绑定到特定的ArcGIS 系列产品的函数和方法。
    System
    System库是ArcGIS架构中最底层的一个库,它包含了一些被其他库使用的一些组件。
    SystemUI
    SystemUI库定义了一些在ArcGIS中被用户界面组件使用的类型。ICommand和ITool这样的接口就在这里定义。
    Geometry
    Geometry库包含了核心的几何对象,比如点,线,面等。定义和实现了空间参考的对象,包括投影和地理坐标系。
    Display
    Display库包含了支持在输出设备上显示图形的组件,屏幕显示,符号,颜色等都在这个库中定义。
    Controls
    Controls库包含了应用程序开发中用到的控件,包括在控件中使用的命令和工具。
    Carto
    Carto库包含了为数据显示服务的对象。PageLayout和Map对象在这个库中,以及支持各种数据类型的图层,渲染。
    GeoDatabase
    GeoDatabase库包含了所有相关数据组织的定义类型。要素,表,网络,TIN都在这个库中定义。
    DataSourcesFile
    DataSourcesFile库包含了为支持的矢量数据格式提供的工作空间工厂和工作空间。
    DataSourcesGDB
    DataSourcesGDB库包含了为存储在RDBMS中的矢量和栅格数据提供的工作空间工厂和工作空间。
    3D Analyst
    包含了数据的3D分析对象,也包括显示3D数据,在这个库中有一个控件SceneControl可用。
    GlobeCore
    包含了globe数据分析的对象,也包含了显示globe数据,在这个库中有一个控件GlobeControl可用。

    练习

    打开你本地的OMD文件(参考位置D:\Program Files (x86)\ArcGIS\DeveloperKit10.1\Diagrams),打开一个OMD文件,如Geodatabase或Geometry的对象模型图学习学习。

    1. 找到抽象类,可创建类,可实例化类,熟悉他们的符号,以及各自的特点。
    2. 找到类与类之间的四种关系,熟悉他们的符号,以及每种关系的特点。
    3. 查看具体类,查看该类有哪些属性、方法,实现了哪些接口。
    4. 尝试找一段代码,通过OMD来体会理解代码,体会上面三步中的知识点。
    5. 理解QI,尝试利用ArcEngine提供的接口完成一个QI的例子。

    参考

    1. ArcGIS Engine入门教程_第二章_类库介绍
    展开全文
  • 两大类数据模型客观对象的抽象过程---两步抽象3.数据模型的组成要素(1)数据结构(2)数据操作(3)数据的完整性约束条件4.概念模型(1)用途与基本要求(2) 信息世界中的基本概念(3)两个实体型之间的联系① 一对一联系(1:1...
  • 对象模型图【OMD】阅读指南

    千次阅读 2014-05-31 20:35:07
    补充几个名词概念: UML:Unified Modeling Language 统一建模语言,...OMD:Object model diagrams 对象模型图表。 首先来看看OMD能帮我们做什么? 1. 该类支持哪些接口; 2. 完成任务需要哪些对象; 3. 如何
  • 对象模型图与开发帮助的使用
  • Kubernetes对象模型

    万次阅读 2018-10-13 20:44:20
    Kubernetes对象 在之前的文章已经讲到了很多Kubernets对象,包括pod,service,deployment等等。Kubernets对象是一种持久化,表示集群状态的实体。它是一种声明式的意图的记录,一般使用yaml...在Kubernetes对象模型...
  • OMT 对象模型、动态模型和功能模型

    千次阅读 2015-09-09 17:01:01
    对象模型描述系统中对象的静态结构、对象之间的关系、对象的属性、对象的操作。对象模型表示静态的、结构上的、系统的“数据"特征。对象模型为动态模型和功能模型提供了基本的框架,对象模型用包含对象和类的对象...
  • 面向对象三种模型之间的关系

    千次阅读 2017-03-11 16:39:14
    功能模型指明了系统应该“做什么”;动态模型明确规定了什么时候(即在何种状态下接受了什么事件的...在面向对象方法学中,对象模型是最基本最重要的,它为其他两种模型奠定了基础,人们依靠对象模型完成3种模型的集成。
  • SWMM对象模型

    千次阅读 2018-09-26 14:46:08
    1-1 典型的城市排水系统(来自EPA) 上描绘了典型的城市排水系统所包含的要素。SWMM将该系统进行概化为几个主要环境体之间的一系列水流和物质流。这些环境体包括如下: 大气环境体产生降水并将污染物沉积到...
  • 对象模型中类与类间的关系

    千次阅读 2017-03-11 15:57:11
     关联表示两个类的对象之间存在某种语义上的联系。 (1) 普通关联  只要在类与类之间存在连接关系就可以用普通关联表示。普通关联的图示符号是连接两个类之间的直线,如下所示。 关联是双向的,可在每一个...
  • JAVA对象模型

    千次阅读 2018-06-09 22:16:30
    现在我们来好好的看看Java对象模型: 几乎所有的Java对象保存在堆内存中(有例外,自行了解),在内存中Java对象包含三部分:对象头、实例数据和对齐填充。其中对象头是一个很关键的部分,因为对象头中包含锁状态...
  • 视频演示:...  如果你使用过VS提供的对象关系设计器创建对象模型的话语,你一定会赞同我这样的说法:手动编码创建对象模型,真是费了九牛二虎之力呀!^_^没错!不过
  • jvm oop-klass对象模型

    千次阅读 2018-06-10 22:51:49
    jvm对象模型可以从hotspot7的源代码中学习.本文内容都是以jdk7对应的hotspot虚拟机为基础进行分析的. 一.oop-klass的层级关系 首先,从oopsHierarchy.hpp的源代码.看看jvm对象模型的层次结构. 引用Hotspot实战里面...
  • 在过去的很多年,我以为关系模型就是传统的企业应用当中DBA设计的那些无数冗余字段,多个模型合并到一个表里面的数据库设计方式,这种数据库设计非常适 合复杂的OLAP类型的查询,他可以有效的消除多表联合查询,而...
  • JavaScript入门篇之浏览器对象模型

    千次阅读 2015-01-11 16:51:17
     BOM(Browser Object Mode) 是指浏览器对象模型,是用于描述这种对象与对象之间层次关系的模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的...
  • UML概述及UML模型图的构成和关系

    千次阅读 2016-08-07 23:09:07
     UML(Unified Modeling Language)为面向对象软件设计提供统一的、标准的、可视化的建模语言。适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。   UML的定义包括UML语义和UML表示法两个部分。 ...
  • ADO对象模型总结

    千次阅读 热门讨论 2016-05-08 19:26:44
    ADO 简介 ActiveX data Object (取代 dao 和rdo) 通过 OLE DB 实现不同类型数据源的访问  有三种类型  数据提供者:将特殊数据转化成...ADO对象模型 七个 三个独立对象 四个依赖独立对象才能使用 Connection 连接对象
  • JVM成神之路-Java对象模型

    千次阅读 2018-07-23 15:01:17
    在jvm的内存结构中,对象保存在堆中,而我们在对对象进行操作时,其实操作的是对象的引用。 Java对象包含三个部分 一个Java对象可以分为三部分存储在内存中,分别是:对象头(Header)、实例数据(Instance Data)和...
  • 面向对象分析与设计——对象模型

    千次阅读 2014-10-22 09:18:58
    对象模型  对象模型包括:抽象、封装、模块化、层次结构、类型、并发和持久   2.1 对象模型的演进   OO建立在以前技术的最佳思想之上。两大趋势:小规模→大规模;高级程序设计语言;   2.1.1 程序...
  • 图说C++对象模型:对象内存布局详解

    千次阅读 多人点赞 2018-02-20 22:09:07
    何为C++对象模型?2.文章内容简介3.理解虚函数表3.1.多态与虚表3.2.使用指针访问虚表4.对象模型概述4.1.简单对象模型4.2.表格驱动模型4.3.非继承下的C++对象模型5.继承下的C++对象模型5.1.单继承5.2.多继承6.虚继承...
  • UML静态模型图

    千次阅读 2015-12-19 21:59:52
    静态模型图:类图、对象图、
  • 面向对象模型的介绍

    千次阅读 2019-06-05 09:17:20
    面向对象模型 什么是面向对象呢?就是描述业务和操作员之间的关系,就是这个模块是谁操作的,就是权限。 一、所谓的面向对象模型,其实就是你要分析所做的系统,有多少个操作人员,就比如以下截图中的这个系统: ...
  • vtk图形模型九类对象

    千次阅读 2010-11-17 11:14:00
    原文出处:http://hi.baidu.com/colorfulweiwei/blog/item/509e4109172dfda62eddd4f2.html<br /><br />2009-07-12 23:06<br /> 分为两种:vtk ... 图形模型对象(the Graphics Models) 可
  • 领域模型图

    千次阅读 2014-03-27 01:12:30
    领域模型图 基本含义: 显示最重要的业务概念和它们之间的关系的类图。用类表示业务概念,但类通常只包含重要属性,不包含操作。 关联和泛化显示了这些概念之间的关系。 它是真实世界中各个事物的表示,而...
  • C++对象模型详解(整理)

    千次阅读 2015-03-26 17:16:23
    一、何为C++对象模型? C++对象模型可以概括为以下2部分: 1. 语言中直接支持面向对象程序设计的部分 2. 对于各种支持的底层实现机制 语言中直接支持面向对象程序设计的部分,如构造函数、析构函数、虚函数、继承...
  • ATM系统对象模型建模

    千次阅读 2018-10-27 23:47:30
    实验2 对象模型建模 一、实验目的 1.熟悉对象模型建模方法; 2.掌握使用StarUML绘制类图的方法; 3.掌握类的描述方法。 二、实验内容 按照以下ATM系统的描述,对其进行对象模型建模。 ATM系统是一个复杂的软件控制...
  • 实体-关系图转换为关系模型

    千次阅读 2019-04-25 16:54:19
      由于目前使用的数据库基本上都是关系数据库,因此首先需要将E-R转换为关系模型,然后根据具体DBMS的特点和限制转换为特定的DBMS支持下的数据模型,最后进行优化。 2.E-R关系模型的转换 2....
  • C++对象模型之详述C++对象的内存布局

    万次阅读 多人点赞 2015-06-08 10:16:48
    本文主要讨论继承对于对象的内存分布的影响,包括:继承后类的对象的成员的布局、继承对于虚函数表的影响、virtual函数机制如何实现、运行时类型识别等。由于在C++中继承的关系比较复杂,所以本文会讨论如下的继承...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 354,572
精华内容 141,828
关键字:

对象模型图关系