UML 面向对象基础

面向对象是一种依赖于几个基本原则的思维方法

UML 面向对象的符号约定

  • 类名以大写字母开头
  • 包含多个单词的类名,所有的单词都连接在一起,并且每个单词的第一个字母都大写
  • 特征(属性和操作)的名字以小写字母开始
  • 多个单词组成的特证明,所有的单词连接在一起,除了第一个字母小写,其他每个单词的第一个字母都大写
  • 操作名的后面跟上一对括号

面向对象的概念

  • 抽象 abstraction:过滤掉对象的一部分特性和操作直到只剩下你所需要的属性和操作
  • 继承 inheritance:子类(subclass)、超类(superclass)
  • 多态 polymorphism:不同的类中可以有相同名字的操作,并且这个操作在每个类中都能以各自不同的方式执行
  • 封装 encapsulation:当一个对象执行自己的操作时,它对外界隐藏了操作的细节,也被称为信息隐藏(information hiding)
  • 消息传递 message sending:对象之间协作是通过相互发送消息
  • 关联 association:单向关联、双向关联;多重性(multiplicity)是对象之间关联的一个重要方面;one-to-one one-to-many
  • 聚集 aggregation:聚集是对象之间的另一种关联;聚集的一种形式是剧集对象和它的组成对象之间具有强关联,这种聚集被称为组成(composition),组成关键特征是部分对象只能存在于组成对象之中

面向对象的意义

  • 对象和对象之间的关联构成了系统功能的骨架。
  • 运用面向对象的概念来帮助理解客户的领域知识,或者叫做客户的领域(domain),并且用客户能够理解的术语来说明你对问题的理解,这一点是最重要的。

个人感觉学习 UML 和学习真正的面向对象编程是有一定区别的,至少从概念上来说是这样的,或者我读的这本书是入门级的读物所致,因此,对于文章中一些笔记有欠妥或不严谨的请谅解(比如对于多态的描述就是不合适的),毕竟这是学习 UML 的读书笔记

注1:本笔记出自《UML 基础、案例与应用》一书的 第二章 理解面向对象



微信中搜索 “码农UP2U” 关注我的公众号吧!!!

你可能感兴趣的:(UML 面向对象基础)