
SIHVCST 第三章架构建模 3.1类 SIHV/C 湖南科技职业学院软件学院
•1 第三章 架构建模 3.1 类

SIHVCST 本节目标 ● 理解面向对象编程中的类 学会提取类的属性 学会提取类的操作 SIH 熟悉类成员的存取控制方式 目任务 1.寻找和抽象出图书业务功能中的类。 2.寻找和抽象出书籍管理功能中的类。 湖南科技职业学院软件学院 2
•2 本节目标 • 理解面向对象编程中的类 • 学会提取类的属性 • 学会提取类的操作 • 熟悉类成员的存取控制方式 任务 1. 寻找和抽象出图书业务功能中的类。 2. 寻找和抽象出书籍管理功能中的类

SIHVCST 3.2.1类 类(class)是对一组具有相同属性、操作、关 系和语义的对象的描述。 类是对事物的抽象,它不是个体对象,而描述 些对象完整集合。 例如,你可以把CPU看作是对象类,它具有CPU的 共同属性,如:主频、指令集、Cache容量、运算 位数、功率等。也可以考虑CPU的某个具体实例, 如“Intel的P4处理器” 湖南科技职业学院软件学院 3
•3 3.2.1 类 • 类(class)是对一组具有相同属性、操作、关 系和语义的对象的描述。 • 类是对事物的抽象,它不是个体对象,而描述 一些对象完整集合。 – 例如,你可以把CPU看作是对象类,它具有CPU的 共同属性,如:主频、指令集、Cache容量、运算 位数、功率等。也可以考虑CPU的某个具体实例, 如“Intel的P4处理器

SIHVCST 3.2.1类 在UML中为类提供了图形表示。这种可视化的 抽象表示,使得我们对类的描述脱离了具体编 程语言,而只需要强调抽象的主要部分。 名称 SBN 作者 出版社 ◆取书名0 取作者名() SIHV ●修政书名0 操作 ·类主要是由:名称、属性和操作。 湖南科技职业学院软件学院 4
•4 3.2.1 类 • 在UML中为类提供了图形表示。这种可视化的 抽象表示,使得我们对类的描述脱离了具体编 程语言,而只需要强调抽象的主要部分。 • 类主要是由:名称、属性和操作。 名称 属性 操作

SIHVCST 类名称 类必须各自有不同的类名称。类名称是一个字 符串。单独的名称为简单名;还有一种用类所 在包的名称作为前缀的类名称作路径名。 例如书类属于数据表包中的类则其类的路径名为“数 据表::书” 0 类名可以是由数字、字母和下划线等符号组成, 类名的长度没有限制。 例如顾客类可以用Customerf作为类名。 湖南科技职业学院软件学院 5
•5 类名称 • 类必须各自有不同的类名称。类名称是一个字 符串。单独的名称为简单名;还有一种用类所 在包的名称作为前缀的类名称作路径名 。 例如书类属于数据表包中的类则其类的路径名为“数 据表::书”。 • 类名可以是由数字、字母和下划线等符号组成, 类名的长度没有限制。 例如顾客类可以用Customer作为类名

SIHVCST 属性 ● 属性(attribute)是已被命名的类的特性,它 描述了该特性的实例可以取值的范围。 属性描述了正被建模的事件的一些特性,这些特性 是类的所有对象所共有。 例如,所有的CPU都有主频率、指令集类型、运 算的位算和外观尺寸。 属性描述的一般语法格式为: 可见性属性名:类型名=初值特性串} 湖南科技职业学院软件学院 6
•6 属性 • 属性(attribute)是已被命名的类的特性,它 描述了该特性的实例可以取值的范围。 – 属性描述了正被建模的事件的一些特性,这些特性 是类的所有对象所共有。 例如,所有的CPU都有主频率、指令集类型、运 算的位算和外观尺寸。 • 属性描述的一般语法格式为: 可见性 属性名: 类型名 = 初值 {特性串}

SIHVCST 属性 在UML中定义了3种可以用于属性的特性: (1)可变(changeable):对修改属性的值没有约束。 (2)只增(addOnly):对于多重性大于1的属性,可 以增加附加值,但一旦被创建,就不可对值进行消 除或改变。 (3)冻结(frozen):在初始化对象后,就不允许改变 属性值。 湖南科技职业学院软件学院 7
•7 属性 • 在UML中定义了3种可以用于属性的特性: (1) 可变(changeable):对修改属性的值没有约束。 (2) 只增(addOnly):对于多重性大于1的属性,可 以增加附加值,但一旦被创建,就不可对值进行消 除或改变。 (3) 冻结(frozen):在初始化对象后,就不允许改变 属性值

SIHVCST 操作 操作(Operation)是服务的实现,该服务可以 由类的任何对象请求以影响其行为。 在UML中把操作序列放在类属性下面的栏中,如 图所示: Book 操作 getName():String SetName(bookName:String) getAuthor(:String 湖南科技职业学院软件学院
•8 操作 • 操作(Operation)是服务的实现,该服务可以 由类的任何对象请求以影响其行为。 – 在UML中把操作序列放在类属性下面的栏中, 如 图所示: 操作 Book getName() : String SetName(bookName : String) getAuthor() : String

SIHVCST 操作 ● 操作的标准语法格式为: ·可见性操作名(参数表):返回值特性串} 可用于操作的特性: (1)查询(isQuery) (2)顺序(sequential) (3)监护(guarded) SIHV/C (4)并发(concurrent) 湖南科技职业学院软件学院 9
•9 操作 • 操作的标准语法格式为: • 可见性 操作名(参数表):返回值{特性串} • 可用于操作的特性: (1) 查询(isQuery) (2) 顺序(sequential) (3) 监护(guarded) (4) 并发(concurrent)

SIHVCST 3.2.2类成员的可见性 1.公有(PubIic)用“+”表示。 2.受保护(protected)用“#'表示。 3.私有(private)用“一"表示。 B00 name:String author Sting Ph02清华大学出版社 受保扩 ISBN String ched ISBNO SetName(bookName:String) getName0:String 湖南科技职业学院软件学院 10
•10 3.2.2 类成员的可见性 1.公有(Public)用“+”表示。 2.受保护(protected)用“#”表示。 3.私有(private) 用“—”表示。 公有 受保护 私有