UML第二版:抽象与具体类详解及示例

需积分: 10 0 下载量 39 浏览量 更新于2024-07-29 收藏 1.85MB PDF 举报
《UML参考手册》第二版详细介绍了UML (Unified Modeling Language) 的核心概念,特别是围绕抽象和具体类的设计与实现。UML 是一种用于系统建模的标准语言,它在软件开发过程中扮演着关键角色,帮助团队理解和交流系统的结构、行为和交互。 章节1的“术语大全”着重于解释“抽象”这一核心概念。在UML中,抽象是表示那些不能直接实例化的元素,比如抽象类、用例、信号以及其他形式的泛化元素。抽象类是一个设计阶段的概念,它可能因为不完整的方法或故意保持未实现状态而不能直接创建实例。抽象类的存在是为了未来的扩展和细化,它必须允许有实例化的子类,否则会变得无用。抽象类可以包含具体操作,这些操作虽然在抽象类中定义,但可以在子类中具体实现并共享。 具体类则是那些可以实例化的类,它们可以没有抽象操作,但如果有的话,也必须被实现。具体操作具有多态性,子类可以重写以适应自身需求,但也可能选择保留为非多态的。一个类只要有未实现的操作,就被认为是抽象的,但反之并非必然,一个完全实现的操作集合的类也可以选择声明为抽象。 对于用例来说,抽象用例描述了一部分行为,这部分行为本身不能独立存在,但可以通过泛化、包括或扩展的方式在具体用例中体现。这样做的目的是为了模块化模型,使其更加清晰易懂。 UML的表示法中,抽象类或抽象操作通过斜体字体标记,并且在特性表中使用关键字“abstract”。例如,如图13-1所示的Account类,它是一个抽象类,包含抽象操作computeinterest和具体操作deposit,子类需要实现computeinterest操作,而属性则始终保持具体。 讨论部分指出,决定一个类是否抽象或具体更多地反映了设计决策,而非简单的继承特性。在实际设计过程中,开发者需要根据系统的需求和演进可能性来灵活运用抽象和具体的概念,确保模型的灵活性和可维护性。因此,理解抽象的使用在UML建模中至关重要,它有助于创建高效且可扩展的设计。