软考07:面向对象技术(待更)

一、面向对象的基本概念
面向对象=对象+分类+继承+通过消息的通信
1、对象
在对象内的操作通常叫做方法,一个对象通常可由对象名、属性、操作三部分组成
2、消息
对象之间进行通信的一种构造叫做消息
3、类
一个类定义了一组大体上相似的对象,一个类所包含的方法和数据描述一组对象的共同行为和属性
4、继承:是父类和子类之间共享数据和方法的机制
5、多态:不同的对象收到同一消息可以产生不同的结果
6、动态绑定:绑定是把一个过程调用和响应调用所需要执行的代码加以结合的过程,在一般程序设计语言中,绑定是在编译时进行的,绑定是在编译时进行的,叫做静态绑定,动态绑定则是在运行时进行的,因此,一个给定的过程调用和代码结合是到调用发生时才进行的
一个类定义了一组大体上相似
二、面向对象程序设计(OOP):实质上是选用一种面向对象程序设计(OOPL)原因,采用对象、类及其相关概念所进行的程序设计
1、面向对象程序设计语言
Smalltalk、Eiffel、C++、JAVA
2、面向对象程序设计语言中的OOP机制
(1)类:具有实例化的功能,包括实例生成和实例消除
(2)继承和类的层次结构:类的实例化过程是一种实例的合成过程,而不仅仅是根据单个类型进行的空间分配、初始化和联编,指导编译程序进行这种合成的就是累层次结构;
(3)对象、消息传递和方法:对象是类的实例,消息传递原始一种与通信有关的概念,OOP使得对象具有交互能力的主要模型就是消息传递模型
(4)对象自身引用:自身引用是OOPL中的一种特有结构
(5)重置:的基本思想是通过一种动态绑定机制的支持,使得子类在继承父类界面定义的前提下,用适合于自己要求的实现去置换父类中的相应实现;
(6)类属类:类属是程序设计语言中普遍注重的一种参数多态机制,类属类可以看作类的模板,一个类属类是关于一个特性抽象,它强调的是这些类的成员特征中与具体类型中与具体类型无关的那些部分
(7)无实例的类
三、面向对象开发技术
1、面向对象分析
目的是为了获得对应用问题的理解,=
包含五个活动:认定对象、组织对象、描述对象间的相互作用、定义对象的操作和定义对象的内部消息
2、面向对象设计
含义是设计分析模型和实现相应的源代码,在目标代码环境中这种源代码可被执行
3、面向对象测试
一般来说面向对象软件测试可分为四个层次进行
(1)算法层
(2)类层
(3)模板层
(4)系统层
四、面向对象分析和设计
1、Peter Coad 和Edward Yourdon OOA法和OOD法
OOA模型由下列五个层次和五个活动组成
(1)五个层次:主题层、对象类层、结构层、属性层、服务层
(2)五个活动:标识对象类、标识结构、定义主题、定义属性、定义服务
在这种方法中定义了两种对象类之间的结构,一种称为分类结构,另一种称为组装结构
OOD
OOD的五个层次和五个活动继续贯穿在OOD过程中,OOD模型由四个部分和四个活动组成
四个活动是:设计问题域部件、设计人机交互部件、设计任务管理部件、设计数据管理部件
2、Booch的OOD法
Booch认为软件开发是一个螺旋上升的过程,在螺旋上升的每个周期中有以下步骤
(1)标识类和对象
(2)确定它们的含义
(3)标识它们之间的关系
(4)说明 每一个类的界面和实现
3、OMT法
4、UML
(1)事物:事物分为结构事物、行为事物、注释事物
(2)关系
(3)图
五、设计模式
1、设计模式的要素
一般有四个要素
(1)模式名称
(2)问题
(3)解决方案
(4)效果
2、创建型设计模式
创建型模式抽象了实例化过程,它们帮助一个系统独立于如何创建、组合和表示它的那些对象
3、结构性设计模式
涉及如何组合类和对象以获得更大的结构
4、行为税模式
行为模式涉及算法和对象间职责的分配
六、C++程序设计
1、类的概念
(1)类和对象
(2)类的定义格式
(3)对象
2、构造函数和析构函数
(1)构造函数
(2)复制构造函数
(3)析构函数
(4)一些补充说明
(5)成员对象
3、继承与派生
(1)基本概念
(2)继承方式
(3)赋值兼容规则
(4)重置(覆盖)
4、多态
(1)多态的定义
(2)多态的类别
(3)虚函数
(4)纯虚函数和抽象类
(5)虚析构函数
七、java程序设计

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值