《面向对象建模》——OO基本概念、UML

编程语言及拓扑结构

在这里插入图片描述在这里插入图片描述

拓扑结构:语言的物理建筑模块及如何连接在一起
Fortran和COBOL语言的基本建筑是子程序
Subroutine,subprogram:子程序,类似c的函数

面向对象语言的拓扑结构:

过程抽象
数据抽象:强调数据类型,整理、组织数据

              过程抽象 + 数据抽象  面向对象 
            类就是将 数据抽象和 过程抽象 捆绑在一起

对象模型

面向对象技术的元素的全体:对象模型 没有全局变量
设计原则:

  • 抽象:抽象出对象的外部行为
    原则:最低承诺(对象的接口仅仅提供基本行为,而不是更多)、最不惊讶(抽象捕捉了某对象的全部行为,不多不少。没有超越边界的“惊喜”和副作)
  • 封装:具体信息 隐藏信息 行为的具体实现
  • 模块化 :将类分组到一些包中
  • 层次 :继承、聚合
  • 类型 :并发 持久
结构化:算法《——》类与对象
对象将算法抽象和数据抽象统一起来
使用对象而不是算法编程
每个对象都是某个类的实例
通过继承得到类之间的关系
  • 编程方法:合适、有效的使用某种语言机制(继承、多线程、指针)
  • 设计方法:有效的给复杂问题建立结构(通过继承、聚合等确定类之间的关系)

面向对象设计:

  • 面向对象分解过程:产生类 对象抽象
  • 与各种模型的描述记号(如UML) 类名是名词

继承的缺点:子类访问超类的变量、调用超类的私有方法、引用超类的超类
面向对象概念框架:抽象、封装、模块化、层次化

对象的定义

 对象: 是一个具有状态(数据变量)、行为、标识(变量名)的实体;
 相似对象的结构和行为由共同的类定义。

对象状态包括对象的性质,以及这些性质的当前的值

对象具有状态说明每个对象都占用一定的空间;或者在现实世界,或者计算机内存(系统中的所有对象都封装一些状态;系统的所有状态(数据)都被对象封装)

同一个类生成的对象之间,不会共享内存空间

 对象行为是其 状态 与施加于状态上的操作的函数;

一些操作改变了对象的状态 对象的状态代表其行为的积累结果
在这里插入图片描述

角色与责任:
一个对象的所有方法构成了其协议;
协议定义了对象允许的行为信封;构成了该对象的全部的静态、动态视图
主动对象与被动对象
  • 主动对象包含了自己的控制线程,是自治的。
  • 被动对象没有,仅仅当被调用的时候,才能经历状态改变
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值