SQLServer教程第15章 对象关系数据库系统
发布时间:2024-11-12
发布时间:2024-11-12
数据库系统概论An Introduction to Database System
第十五章 对象关系数据库系统
An Introduction to Database System
对象关系数据库系统 对象关系数据库系统(Object Relational Database System, ORDBS)是面向对象数据模型(Object Oriented Data Model, 简称OO模型)和关系数据模型相结合的产物 三条研究路线 以面向对象的程序设计语言为基础,研究持久的程序设计语 言,支持OO模型;
建立新的面向对象数据库系统OODBS,支持OO数据模型; 以关系数据库和SQL为基础,把面向对象技术融入数据库系 统的ORDBSAn Introduction to Database System
第十五章 对象关系数据库系统15.1 面向对象数据模型15.2 对象-关系数据库 15.3 小结
An Introduction to Database System
15.1 面向对象数据模型 面向对象数据库系统支持OO模型 面向对象数据库系统:一个持久的、可共享的对 象库的存储和管理者 对象库:由一个OO模型所定义的对象的集合体
An Introduction to Database System
15.1 面向对象数据模型15.1.1 OO模型的核心概念
15.1.2 类层次(结构)15.1.3 继承 15.1.4 对象的嵌套
An Introduction to Database System
15.1.1 OO模型的核心概念1.对象 定义:对象是由一组数据结构和在这组数据结构
上的操作的程序代码封装起来的基本单位。 组成部分 属性(Attribute)集合 属性描述对象的状态、组成和特性
方法(Method)集合 描述了对象的行为特性An Introduction to Database System
OO模型的核心概念(续)2. 对象标识OID(Object IDentifier) 概念:面向对象数据库中的每个对象都有一个唯 一的不变的标识称为对象标识(OID) 特点: 永久持久性
独立于值的、系统全局唯一的
An Introduction to Database System
OO模型的核心概念(续)3. 封装(Encapsulation) 每一个对象是其状态与行为的封装 封装是对象的外部界面与内部实现之间实行清晰隔离的一 种抽象,外部与对象的通信只能通过消息 对象封装之后查询属性值必须通过调用方法
An Introduction to Database System
OO模型的核心概念(续)
4. 类(Class) 对象类(简称类):共享同样属性和方法集的所有 对象构成了一个对象类 实例:一个对象是某一类的一个实例(instance) 在OODB中,类是“型”,对象是某一类的一个 “值”
An Introduction to Database System
15.1 面向对象数据模型15.1.1 OO模型的核心概念
15.1.2 类层次(结构)15.1.3 继承 15.1.4 对象的嵌套
An Introduction to Database System
类层次(结构)(续)
图15.1 学校数据库的类层次结构图
教员、行政人员、工人中只有本身的特殊属性和方法 同时它们又继承教职员工类和人的所有属性和方法 逻辑上它们具有人、教职员工和
本身的所有属性和方法An Introduction to Database System
类层次(结构)(续) 超类/子类之间的关系体现了“IS A”的语义 超类是子类的抽象(Generalization)或概括 子类是超类的特殊化(Specialization)或具体化
类层次可以动态扩展,一个新的子类能从一个或多个已有
类导出
An Introduction to Database System
15.1 面向对象数据模型15.1.1 OO模型的核心概念
15.1.2 类层次(结构)15.1.3 继承 15.1.4 对象的嵌套
An Introduction to Database System
15.1.3 继承 单继承:一个子类只能继承一个超类的特性(包括 属性和方法) 层次结构图是一棵树
多重继承:一个子类能继承多个超类的特性 层次结构图是一个带根的有向无回路图
An Introduction to Database System
继承(续) 多重继承
具有多继承的类层次结构图
An Introduction to Database System
继承(续) 继承性的优点 第一,建模的有力工具,提供了对现实世界简明而精 确的描述
第二,提供了信息重用机制
子类与超类的冲突 子类在定义自己特殊属性和方法时可能与继承下来的 超类的属性和方法发生冲突 由系统解决An Introduction to Database System
下一篇:治安巡逻队治安事件应急预案