- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1-对象数据库,面向对象数据库,面向对象数据库有哪些,对象数据库有哪些,数据库,postgresql,mongodb,关系数据库,nosql,数据库引擎找不到对象
高级数据库系统及其实现Advanced Theory on Database Systems 上海理工大学 光电信息与计算机工程学院 第1章 面向对象数据库 新型数据库应用 数据模型的发展 ODMG对象数据模型 持久性编程语言 面向对象数据库系统发展历史 1.1 新型数据库应用 传统应用的共同特点 数据及结构的一致性:具有相似的结构化数据和相同的大小 面向记录:基本数据由定长数据组成 小数据项:记录不超过几百字节长 原子字段:记录字段短、定长、无结构,满足1NF。 1.1 新型数据库应用 新型应用领域: 计算机辅助设计(CAD):储存工程设计数据,包括被设计的构件、构件间的联系、设计的版本等 计算机辅助软件工程(CASE):存储和管理软件开发人员使用的数据,包括源代码、软件模块间的依赖关系、变量的定义与使用、软件系统的发展历史等 多媒体数据库:多媒体数据包括:图像、空间数据、音频(Audio)数据、视频(Video)数据等,主要的应用包括:地理信息系统(GIS)、Voice-mail系统、图形系统、音频点播(AOD: Audio-On-Demand)、视频点播(VOD)等 1.1 新型数据库应用 新型应用领域: 办公信息系统(OIS):办公自动化主要包括文档建立工具和文档检索工具 超文本数据库:超文本是由文本和指向其他文档的勾链构成。WWW系统是一个超文本的例子,确切地说,它是一个超媒体的例子,因为Web文档可能是多媒体文档。超文本数据库必须支持基于勾链的文档检索和基于结构的文档查询功能。 1.2 数据模型的发展 1.3 ODMG对象模型 模型概述 型(Types) 对象(Objects) 字面量(Literals) 建模对象的状态--特征 建模对象的行为--操作 1.3.1 对象模型概述 基本建模单位:对象和字面量,对象有一个唯一的标识符而字面量没有 每个对象(字面量)具有一个型,某个型的所有元素具有相同的状态和行为 一个对象的状态由一组特征来描述:属性与联系 一个对象的行为由一组操作来描述 1.3.2 对象的型 型的定义:一个外部说明和一个或多个实现,外部说明是对象的抽象 外部说明包括:对象的操作和特征 对象(Objects) 型的三种定义方式:Interface、class、literal 接口型仅定义一个对象型的抽象行为 类型定义一个对象型的抽象行为和抽象状态 字面量型仅定义了一个字面量型的抽象状态 1.3.2 对象的型 Interface Employee {…}; class Person { … }; struct Complex { float re; float im; } 1.3.2 对象的型 一个型可以有多个实现,但在一种绑定语言中,一个型通常只有一个实现 C++实现 Java实现 型的说明独立于型的实现所带来的好处 可以使型的语义独立于绑定语言的表示细节 有利于型的多语言存取和异构计算环境中对象的共享 1.3.2 对象的型 -- 子型化(subtyping)与行为继承 继承 子型化仅仅反映了行为的继承过程 Interface Employee {…}; interface Professor: Employee { … }; interface Associate_Professor: Professor { ... }; Professor/Employee:子型/超型联系 子型继承其所有超型的特征与行为 子型可以提炼(refine)或重载来自超型的特征与行为 类是可实例化的型、接口是不可实例化的型 行为继承反映了两个interface间的ISA联系(generalization-specialization) 继承 继承:由现有类导出新的类,这个新的类不但可以继承原类的全部属性和方法,而且还可以定义它自己额外的属性和方法,以及重定义继承的方法 子类:新类称为原类的“子类”—特化 超类:原类称为导出类的“超类”—泛化 继承实现了概念建模中的“IS-A”联系 单继承:一个类只能有一个超类 多继承:一个类可有多个超类,通过组合几个类的描述到一个类而提高共享能力 1.3.2 对象的型 -- 状态继承 行为继承反映的是两个interface间的ISA联系状态继承反映的是两个class间的EXTENDS联系 一个类将继承被它扩展的另一个类的所有的特征和行为 Example 1.3.2 对象的型 -- 状态继承 interface Employee {…}; class Person { attribute string name; attribute Date birthDate; }; class EmployeePers
文档评论(0)