1 对象
  数据库中的每个事物都看作是一个对象,而且每个对象在产生时系统给予唯一的标识。对象可以是有形的或抽象的,简单的或复杂的。简单的(基本的)对象如一个整数、一个字符串,它们没有属性,仅有一个值,其值就是对象本身。较复杂的对象包含有属性和行为特性。通过属性还可以引用其他对象,其他对象仍然还可以包含有属性和行为特性等等。
  对象和类概念的灵活性使得用户能建立高度结构化的数据模型,可以描述复杂对象,这比传统的数据库系统更能体现现实世界的语义。
  复杂对象是包含了其他对象而建立的一些对象,或者说是对简单的对象进行各种构造而得到的对象。构造型的复杂对象如集合、元组和表等。还有许多其他的方法,可以构造更复杂的对象。

  例如,一个学生是一个对象。又如,一张建筑施工平面图,其中包括许多基本图素,如点、线、圆等。同时还包含许多部件或符号,如门、窗、轴线、墙线、单元房间等。这些墙线和单元房间又与门、窗有联系,因为墙线中要为门、窗开洞,洞的大小要与使用的门、窗型号一致,因此形成复杂的网络关系。
  一个对象的行为特性隐藏在操作方法中。方法是由操纵和回送一个对象状态的编码组成。方法是对象定义的一个组成部分。对象的方法以及属性在对象外部是不可见的。一个对象与其他对象的通讯是通过消息实现。对于由一个对象可解释的消息,存在着一个相应的执行该消息的方法。通过执行一个相应的方法并回送一个对象作为一个对象对某个消息的反应。

  2 类
  具有类似特征的实体或对象分组到一起组成一个单个的对象类。所谓类似的特征是指有相同的结构、行为、负责相同消息的处理。在对象类的描述中,定义了对所有对象成员的表示和操作。因此,一个类形成了区别于单个对象的一个样板。属于一个类的具有特定值的一个对象称为该类的实例对象,或简称实例。
  所谓类似的特征是指有相同的结构和行为。只要对象在结构和行为上有细微的差别,它们就属于不同的对象类。
  例如,所有的学生组成一个类,我们暂时称为学生类。他们有共同的属性和相同的行为,如学号、姓名、性别、年龄、班级等;有相同的行为如计算平均成绩等。学生类中的某个特定学生,如李立就是该类的一个实例。学生又分为本科生和研究生,学生、本科生和研究生,他们有些属性和行为相同,但又有差别,他们可以分属于三个不同的类。

  3 继承
  通过继承,可在现存对象类层次中构造新的对象类,即新的子类类。新类可继承现存类的行为(操作方法等)和表示(属性)。继承行为意味着多个软件之间编码共享。继承表示意味着多种数据对象之间结构共享。综合这两种类型的继承,提供了有力地描述和软件开发的策略。继承也提供了组织信息的自然机制,它把对象分类组织到已定义的继承层次中。

  4 多态
  对象根据所接受的消息而产生动作(执行方法)做出反应。同样的消息被不同的对象接收时可导致完全不同的实现方法,得到不同的结果,该现象称为多态性。
  多态是指请求的联编要在一个操作的若干种实现方法之间做出选择。多态允许操作符的重载,就是说一个操作可以有几种不同的实现方法,并有不同种类的参数相联系。
  利用多态性,使得对象之间可以组成一个体系,这个体系对外提供统一的接口,但内部有不同的实现方式,根据运行时的状态选择采用不同的实现方式。这种接口和实现分离的方法,对实现面向对象的应用是非常有效的技术。也使得数据库用户能够发送通用形式的消息,而将所有的实现细节留给接受消息的对象。
  多态性以继承机制为基础,通常将有实用功能的方法放置于较高的类层次中。而将必要的变形放置于较低的类层次中。
  例如,对于图或表的打印方法和正文文件的打印方法会完全不同,尽管它们都是使用的print方法。

  5 封装
  封装是指在类的定义中封装了类的结构表示和对该类数据的操作方法。只能通过传递消息来完成操作,具体的结构和实现对用户是隐藏的。

  6 对象标识
  对象标识是对象的一个特性,是用于区别该对象与所有其他对象的特征。通过对象标识,一些对象可以包含或引用其它对象。
  对象的标识不同于关系数据库中的码,码是元组内容的组成部分。对象标识一旦产生,永远与该对象关联,它独立于对象的状态和位置,而且与对象的生命周期无关,就是说,即使该对象消逝了,对象的标识符也不可再用。