- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华师大面向对象程序设计-Lec05_第3章—类图概要
* 第3章 类图、对象图和包图 使用面向对象的思想描述系统,能够把复杂的系统简单化、直观化,这有利于用面向对象的程序设计语言实现系统,并有利于未来对系统的维护。构成面向对象模型的基本元素有类、对象和类与类之间的关系等。类图和对象图合称为结构模型视图或者静态视图,用于描述系统的结构或静态特征。其中,类图用来描述系统中的类以及类与类之间的静态关系等;对象用来描述特定时刻实际存在的若干对象以及它们之间的关系。一个系统的模型中可以包含多个对象图,每个对象图描述了系统在某个特定时刻的状态。 * 本章学习要点: 理解类图的基本概念 为系统建模类 建模类之间的关联关系 理解并建模泛化关系 了解依赖关系和实现关系 了解对象图和包图的概念 构造类图 * 3.1 类图 构建面向对象模型的基础是类、对象以及它们之间的关系。可以在不同类型的系统(例如,商务软件、嵌入式系统、分布式系统等)中应用面向对象技术,在不同的系统中描述的类可以是各种各样的。例如,在某个商务信息系统中,包含的类可以是顾客、协议书、发票、债务等;在某个工程技术系统中,包含的类可以有传感器、显示器、I/O卡、发动机等。 在面向对象的处理中,类图处于核心地位,它提供了用于定义和使用对象的主要规则,同时,类图是正向工程(将模型转化为代码)的主要资源,是逆向工程(将代码转化为模型)的生成物。因此,类图是任何面向对象系统的核心,类图随之也成了最常用的UML图。 * 3.1.1 概述 类图是描述类、接口以及它们之间关系的图,它显示了系统中各个类的静态结构,是一种静态模型。类图根据系统中的类以及各个类的关系描述系统的静态视图。可以用某种面向对象的语言实现类图中的类。 类图是面向对象系统建模中最常用和最基本的图之一,其他许多图,如状态图、协作图、组件图和配置图等都是在类图的基础上进一步描述了系统其他方面的特性。类图中可以包含了7个模型元素,它们分别是:类、接口、依赖关系、泛化关系、关联关系和实现关系等模型元素。在类图中也可以包含注释、约束、包或子系统。 3.1.2 类及类的表示 类是构成类图的基础,也是面向对象系统组织结构的核心。要使用类图,需要了解类和对象之间的区别。类是对资源的定义,它所包含的信息主要用来描述某种类型实体的特征以及对该类型实体的使用方法。对象是具体的实体,它遵守类制定的规则。从软件的角度看,程序通常包含的是类的集合以及类所定义的行为,而实际创建信息和管理信息的是遵守类的规则的对象。 类定义了一组具有状态和行为的对象,这些对象具有相同的属性、操作、关系和语义。其中,属性和关联用来描述状态。属性通常用没有身份的数据值表示,如数字和字符串。关联则用有身份的对象之间的关系来表示。行为由操作来描述,方法是操作的实现。 * 3.1.3 定义类 由于类是构成类图的基础,所以,在构造类图之前,首先要定义类,也就是将系统要处理的数据抽象为类的属性,将处理数据的方法抽象为类的操作。要准确地定义类,需要对问题域有透彻准确地理解。在定义类时,通常应当使用问题域中的概念,并且,类的名字要用类实际代表的事物进行命名。 通过自我提问和回答下列问题,将有助于在建模时准确地定义类: 在要解决的问题中有没有必须存储或处理的数据,如果有,那么这些数据可能就需要抽象为类,这里的数据可以是系统中出现的概念、事件或者仅在某一时刻出现的事务。 有没有外部系统,如果有,可以将外部系统抽象为类,该类可以是本系统所包含的类,也可以是能与本系统进行交互的类。 有没有模板、类库、或者组件等,如果有,这些可以作为类。 系统中有什么角色,这些角色可以抽象为类,例如,用户、客户等。 系统中有没有被控制的设备,如果有,那么在系统中应该有与这些设备对应的类,以便能够通过这些类控制相应的设备。 * 3.2 关联关系 在使用面向对象的思想和方法开发的系统中,使用类来描述应用程序所需资源的类型、目的和它们所提供的特征(例如属性和操作)。除了需要使用类定义软件所需的资源之外,在建模过程中还需要描述资源之间的交互情况,以解释对象之间是如何进行通信的。为了进行通信,对象之间也需要定义通信手段,在UML规范中,对象之间的通信手段就称为关系。 类图中的关联定义了对象之间的关系准则,在应用程序创建和使用关系时,关联提供了维护关系完整性的规则。 * 3.2.1 二元关联 关联意味着类实际上以属性的形式包含对其他类的一个或多个对象的引用。在确定了参与关联的类之后,就可以对关联进行建模了。本章首先讨论只有两个类
文档评论(0)