清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 2.对象的动作 被激活的对象在系统中怎样动作呢?一个面向对象 的系统应具备以下两种功能:第一,向其他对象发 送消息。这是对象间相互通信的唯一手段。第二, 能生成或创建新的对象。这是用对象来描述系统变 化所必须的手段。 3.消息 面向对象的系统中环境对某一对象发出消息以激活 该对象,从而通知它需要做什么。消息中一般包含 请求对象的标识符以及完成该工作所必需的信息, 例如参数值等。另外,请求对象的对象名也可包含 在消息中
2. 对象的动作 被激活的对象在系统中怎样动作呢?一个面向对象 的系统应具备以下两种功能:第一,向其他对象发 送消息。这是对象间相互通信的唯一手段。第二, 能生成或创建新的对象。这是用对象来描述系统变 化所必须的手段。 3. 消息 面向对象的系统中环境对某一对象发出消息以激活 该对象,从而通知它需要做什么。消息中一般包含 请求对象的标识符以及完成该工作所必需的信息, 例如参数值等。另外,请求对象的对象名也可包含 在消息中
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 4.类和实例 具有相同属性和行为的对象集合称为类。换句话说, 属于同一类中的对象具有相同的存储结构,使用相 同的过程集合对数据进行操作。每一个类都具有 个反映其特征的型(type),型提供选择和区分对象 操作的依据。 类也可以被看作是对象,而且,类具有分层构造特 点,即从具有共同属性和行为特征的对象的集合中, 可进一步抽出具有某些特殊属性或行为特征的对象 构成该类的子类;而该类又是该子类的超类。这些 超类、类、子类等构成类的层次结构,子类继承其 所有高层超类的属性和行为特征,但反过来,超类 或类不具有子类所具有的独特的属性与行为特征
4. 类和实例 具有相同属性和行为的对象集合称为类。换句话说, 属于同一类中的对象具有相同的存储结构,使用相 同的过程集合对数据进行操作。每一个类都具有一 个反映其特征的型(type),型提供选择和区分对象 操作的依据。 类也可以被看作是对象,而且,类具有分层构造特 点,即从具有共同属性和行为特征的对象的集合中, 可进一步抽出具有某些特殊属性或行为特征的对象 构成该类的子类;而该类又是该子类的超类。这些 超类、类、子类等构成类的层次结构,子类继承其 所有高层超类的属性和行为特征,但反过来,超类 或类不具有子类所具有的独特的属性与行为特征
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 个类中的对象即是该类的一个实例,实例具体描 述一个对象。一般来说,一个类中有多个实例。类 和实例的关系近似于数据结构与具体数据的关系。 5.过程或方法 过程或方法是定义于某一特定类的操作与法则。 种类型的对象只能被事先定义好的过程或方法所操 作。不过,不同类型的对象可以分别包含同一过程 或方法。例如,在实数子类和二进制数子类中定义 “+”法,则实数子类中的对象和二进制数子类中的 对象都可使用该方法改变自身的状态。显然,对于 同一消息(1,1),实数子类的输出结果是2,而二 进制子类的输出结果将是0。 关于对象的几个主要关键词如图10.所示
一个类中的对象即是该类的一个实例,实例具体描 述一个对象。一般来说,一个类中有多个实例。类 和实例的关系近似于数据结构与具体数据的关系。 5. 过程或方法 过程或方法是定义于某一特定类的操作与法则。一 种类型的对象只能被事先定义好的过程或方法所操 作。不过,不同类型的对象可以分别包含同一过程 或方法。例如,在实数子类和二进制数子类中定义 “+”法,则实数子类中的对象和二进制数子类中的 对象都可使用该方法改变自身的状态。显然,对于 同一消息(1,1),实数子类的输出结果是2,而二 进制子类的输出结果将是0。 关于对象的几个主要关键词如图10.1所示
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 关键词 基本定义 对象由数据和过程构成的实际世界中实体的抽象。 对象类具有相同属性和动作行为的对象集合 对象实例类中的一个具体对象其届性被赋予具体值。 属性 对象中所包含的数据变量 过程(服务)对对象进行操作的函数。 封装实例的属性和行为的封闭。封装后的属性只能被对象名调用;封装后的属性只能被过程访间闰。 包含 两个实例之间的一种关系,包含对象与被包含对象之间用指针链接。 图101关于面向对象技术的几个关键词
图10.1 关于面向对象技术的几个关键词
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 10.2面向对象和操作系统 本节主要讲述为什么要把面向对象技术引入操作系 统和怎样用面向对象技术开发操作系统。 1021面向对象技术的引入 面向对象技术最初在操作系统中出现是在20世纪60 年代后期, J. Dennis等从资源保护的角度出发提出 了权能( capability)的概念,权能的概念也是造成面 向对象概念产生的重要因素之一
10.2 面向对象和操作系统 本节主要讲述为什么要把面向对象技术引入操作系 统和怎样用面向对象技术开发操作系统。 10.2.1 面向对象技术的引入 面向对象技术最初在操作系统中出现是在20世纪60 年代后期,J. Dennis等从资源保护的角度出发提出 了权能(capability)的概念,权能的概念也是造成面 向对象概念产生的重要因素之一