(20)--6-1 UML类图-类 抽象类 接口 -面向对象与UML.pdf
-
资源ID:96640679
资源大小:431.30KB
全文页数:14页
- 资源格式: PDF
下载积分:20金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
(20)--6-1 UML类图-类 抽象类 接口 -面向对象与UML.pdf
面向对象与面向对象与UML Object-Oriented and UML UML图图 -UML类图类图 Class Diagram 类图的地位类图的地位 类图类图描述系统中类的静态结构,描述系统中的描述系统中类的静态结构,描述系统中的类类及及类之间的关系类之间的关系,还描,还描述类的述类的内部结构内部结构(类的属性和操作)。(类的属性和操作)。类图类图是面向对象系统建模中最常用、最重要的图。是面向对象系统建模中最常用、最重要的图。类图类图是定义其它图的是定义其它图的基础基础,在类图的基础上,可以使用,在类图的基础上,可以使用状态图、协作图、状态图、协作图、顺序图、组件图顺序图、组件图等进一步描述系统其它方面的特征。等进一步描述系统其它方面的特征。对于对于抽象建模抽象建模和和设计实际的程序设计实际的程序而言,类图都是有用的。而言,类图都是有用的。类图中的类类图中的类可以直接用某种面向对象编程语言实现。可以直接用某种面向对象编程语言实现。C+、java、C#.类图的元素类图的元素 类(类(Class)接口(接口(Interface)依赖关系(依赖关系(Dependency)泛化关系(泛化关系(Generalization)关联关系(关联关系(Association)实现关系(实现关系(Realization)聚合关系聚合关系(aggregation)组合关系组合关系(composition)类类 类类是构成类图的基础,也是面向对象系统组织结构的核心。是构成类图的基础,也是面向对象系统组织结构的核心。类类是对一组具有相同属性、操作、关系和语义的对象的抽象。是对一组具有相同属性、操作、关系和语义的对象的抽象。类类包括包括名称部分(名称部分(Name)、属性部分(属性部分(Attribute)和和操作部分操作部分(Operation)。UML规范采用一个具有规范采用一个具有3个分栏的图标表示一个类。个分栏的图标表示一个类。属性属性 属性属性可见性(访问权限,可访问性)可见性(访问权限,可访问性)可见性描述了该属性对其它类是否可见,以及是否可以被其它类引用。可见性描述了该属性对其它类是否可见,以及是否可以被其它类引用。类型:类型:公有(公有(Public)“”“”私有(私有(Private)“”)“”受保护(受保护(Protected)“”)“”注意:注意:UML未规定默认的可见未规定默认的可见性,如果没有给出,表性,如果没有给出,表明该属性的可见性尚未明该属性的可见性尚未定义。定义。属性属性 属性可见性属性可见性 公有(公有(Public)“”“”私有(私有(Private)“”)“”受保护(受保护(Protected)“”)“”属性类型属性类型 属性的初始值属性的初始值 属性字符串属性字符串(属性约束)(属性约束)操作(方法)操作(方法)操作可见性操作可见性 公有(公有(Public)“”“”私有(私有(Private)“”)“”受保护(受保护(Protected)“”)“”包内公有(包内公有(Package)“”“”参数表参数表 参数名参数名:参数类型参数类型=默认值默认值 返回值类型返回值类型 query 操作字符串操作字符串(操作约束)(操作约束)作用域描述作用域描述 作用域(作用域(scope)是与属性和操作相关的一个重是与属性和操作相关的一个重要概念。要概念。存在两种作用域:存在两种作用域:(1)实例()实例(instance)作用域下)作用域下,类的不同实例对,类的不同实例对象拥有自己的属性值,类似于象拥有自己的属性值,类似于C+中的中的非静态成员非静态成员。(2)分类()分类(classifier)作用域)作用域,类的所有实例对象,类的所有实例对象共享相同的属性值,类似于共享相同的属性值,类似于C+中的中的静态成员静态成员。UML 分类作用域的属性和操作名字要带分类作用域的属性和操作名字要带下划线下划线。抽象类(抽象类(abstract class)抽象类抽象类:至少拥有一个抽象操作的类:至少拥有一个抽象操作的类。抽象操作:抽象操作:在指定该操作的类中并没有该操作的实现方法,而只是在指定该操作的类中并没有该操作的实现方法,而只是显示了操作签名的那种操作显示了操作签名的那种操作。(例如,。(例如,C+中的纯虚函数中的纯虚函数,Java中的中的抽象方法抽象方法)在在UML图中,抽象操作的显示是在操作签名后面用特性字符串图中,抽象操作的显示是在操作签名后面用特性字符串abstract,或者将操作签名用斜体字体方式显示,或者将操作签名用斜体字体方式显示。在在UML图中,抽象类的显示是在类名后面用特性字符串图中,抽象类的显示是在类名后面用特性字符串abstract,或者将类名用斜体字体方式显示。或者将类名用斜体字体方式显示。接口(接口(interface)接口是一组没有相应实现方法的描述。接口是一组没有相应实现方法的描述。接口通常被描述抽象操作,即用操作名、参数表和返回类型说明接口接口通常被描述抽象操作,即用操作名、参数表和返回类型说明接口行为,而操作的实现部分将出现在实现该接口的元素中。行为,而操作的实现部分将出现在实现该接口的元素中。使用接口可以很好地将类所需要的行为与该行为如何被实现完全分开。使用接口可以很好地将类所需要的行为与该行为如何被实现完全分开。在进行系统建模时,接口起到十分重要的作用,因为模型元素之间的在进行系统建模时,接口起到十分重要的作用,因为模型元素之间的协作是通过接口进行的。协作是通过接口进行的。接口接口 UML中接口通常只包含操作不包含属性。中接口通常只包含操作不包含属性。接口不能实例化为对象。接口不能实例化为对象。一个类可以实现一个或多个接口,一个接口可以被多个类实现。一个类可以实现一个或多个接口,一个接口可以被多个类实现。如果类实现了接口,但未实现该接口中的所有操作,那么此类必须声如果类实现了接口,但未实现该接口中的所有操作,那么此类必须声明为抽象的。明为抽象的。计算机与控制工程学院计算机与控制工程学院 郭艳燕郭艳燕 思考:接口与抽象类的区别?思考:接口与抽象类的区别?本章小结本章小结