面向对象数据库理论设想

面向对象数据库理论设想

ID:10543308

大小:54.50 KB

页数:4页

时间:2018-07-07

面向对象数据库理论设想  _第1页
面向对象数据库理论设想  _第2页
面向对象数据库理论设想  _第3页
面向对象数据库理论设想  _第4页
资源描述:

《面向对象数据库理论设想 》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、面向对象数据库理论设想[论文关键词】数据库  面向对象  数据库系统[论文摘要]面向对象数据库系统是为了满足新的数据库应用需要而产生的新一代数据库系统。讨论和设计了面向对象数据库的理论概念和含义,设计和构建了一个面向对象的数据库系统的理论体系。随着应用的扩展,特别是诸如人工智能等复杂应用的需要,关系型数据库已经显得力不从心了,人们迫切希望产生一种新的数据库解决方案来适应这些复杂需求。今后,面向对象的数据库极有可能是数据库发展的方向。1面向对象数据库模型  1.1核心概念  1.i.1对象与对象标识对象,是现实世界中实体的抽象,是数据和操作的集合,是持久化到数据库中的最小的存储单位。

2、这里的对象其实与一般的面向对象程序设计语言中的对象并没有很大不同。但是,这里的对象是持久性的。数据库中的对象是数据记录的最小单位,也就是说,数据库中至少存在一个对象才有意义。当然,对象中还可以有对象的属性,方法等,但一个对象必须是完整的。对象标识,指的是唯一标定一个对象的标志,一个对象对应一个标识符。在现实世界中,对象可能会随着时间的推移而发生改变,但对象标识不应该改变,因此,对象标识自对象生成后就不应该再改变,否则无法使用对象标识唯一确定一个对象了。即使两个对象的属性和方法以及状态完全一致,只要其对象标识不同,则两者是不同的对象。对象标识一般有以下三种实现方式川(e}‘一r}sz

3、}:(1)值标识,使用对象的某一属性作为其对象标识,不推荐此方式。(2)名标识,使用一个名字来表示标识。推荐此种方式。(3)内标识,以上两种方式是由用户建立的,而这种方式是由系统内部建立的,不具有任何实际含义,且只有系统才可以“观察”此类对象标识。另外,在对象数据库中,标识是永久不变的,即具有永久持久性,这和面向对象程序中的对象标识不一样,面向对象程序中的对象标识只具有对象内持久性。  1.1.2封装抽象是对象的外部界面与内部实现之间实行清晰隔离的一种抽象,外部与对象的通信只能通过消息来实现[2)(e3o6-r}s6>。在对象数据库中,表现为对象的私有和保护成员只能通过其方法

4、来查询得到,而公有成员可以直接查询。这种方式的优点是对象被封装成了自含的单元,对象只接受已定义好的操作,其他对象不能直接访问对象的非公有成员。缺点是丧失了传统关系数据库中进行即席的、按内容的查询,这就不够方便灵活了,因此,需要做一些改进和妥协。  1.1.3类共享同一属性和方法集的所有对象构成的对象类,一个对象是一个类的实例。在数据库是一种抽象的数据类型,相当于关系数据库中的一张表。  1.1.4类层次这里涉及到继承的概念,即类可以继承类,从而具有与父类(或称超类)的所有符合条件(只保护类型或公有类型)的属性和方法。这是关系数据库中所没有的。  1.1.5消息指的是对象的方法调用。

5、通过对象的方法调用可以访问对象的属性数据和执行业务逻辑。这也是关系数据库中没有的。  1.2对象与对象标识  1.2.1对象结构包括两部分,一个是属性集合,一个是方法集合。属性集合将用于存储数据,方法集合将用于操作数据。属性集合即是对象的成员变量,其中又可以分为公有类型的成员、私有类型的成员和保护类型的成员。公有类型的成员可以直接使用查询语句进行查询,保护型成员可以在该类的子类的对象中直接访问,私有类型的成员只能在本类的对象中访问,外部对象只能通过实现定义好的方法(即操作)进行访问。如果没有事先定义好的方法,则外部将无法访问这些变量的值,这就实现了对象的封装性了。在00数据库中,对

6、象结构同样分成这两种集合。  1.2.2对象标识表示在一个数据库中一个对象仅有一个唯一不变的标识就是对象标识。这个标识用来精确定位一个对象。在00数据库中,对象标识是唯一标定这一持久性存储单元的唯一依据。其它对象或方法访问本对象的属性和方法必须先找到该对象的对象标识,否则无法访问。  1.2.3封装即将一个对象的属性和方法封装在对象内部,外部只能通过对象提供的外部接口进行访问。这样就提高了数据的安全性和代码的重用性。I.3类与类层次相似对象的集合称为类,在数据库中表现为面向对象数据库模式的集合,它规定了该类的对象的数据结构规则和操作规则。在面向对象数据库中,一个类相当于关系数据库中

7、的一张表。它同样有字段和属性,甚至还有关系数据库表所没有的方法。这种思路将使得可以在面向对象数据库中实现复杂的逻辑。类层次表现在继承上,即父类和子类的层级关系。这是为了多态和数据共享的目的。这种思路可以象Java中那样使用接口和基类来完成设计。1.4继承就像类层次中所说的,继承是为了多态和数据共享的目的,也是面向对象代码重用的重要机制之一。  I.5滞后联编即实现了重载的效果,OODBMS不能在编译时把操作名联编到程序上,必须在运行时根据需要进行抉择。  1.6对象的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。