logo资料库

面向对象的程序设计语言——C++课件 第二版(陈志泊 ).ppt

第1页 / 共284页
第2页 / 共284页
第3页 / 共284页
第4页 / 共284页
第5页 / 共284页
第6页 / 共284页
第7页 / 共284页
第8页 / 共284页
资料共284页,剩余部分请下载后查看
第2章 C++语言基础 本章是学习C++语言的基础,包括以下几个方面: 1.结构化程序设计方法与面向对象程序设计方法的各自特点、 区别和相互联系。 2.面向对象的程序设计方法中的有关概念,如类、对象、封 装、继承、消息和多态性等。 3.C++程序的基本组成和框架结构。 4.掌握C++语言中的基本数据类型、各种运算符、表达式。 5.C++数据输入流对象cin和输出流对象cout的使用。 6.程序的3种基本结构 7.构造数据类型,如数组、结构体、指针等的定义方法、特 点和使用方法。 7.函数的定义、调用及函数调用过程中的参数传递的机理和 程序执行流程。 8.引用的概念及其定义和使用方法。 返回 1
2.1 从面向过程的程序设计到面向对象的程序设计 2.1.1 传统的结构化程序设计(Structured Programming-- -SP)方法 1.使用SP方法设计程序的步骤 数据声明 数据处理 结果输出  在数据处理过程中,采用的是自顶向下、分而治之的 方法,将整个程序按功能划分为几个可独立编程的子 过程模块,每一子模块完成指定的子任务,并且提供 一个清晰、严格的调用界面,主过程通过调用各子过 程完来成全部处理工作 。 返回 2
2.1 从面向过程的程序设计到面向对象的程序设计 2.SP方法的特点 优点: (1)这种程序设计方法力求算法描述准确。 (2)对每一子过程模块容易进行程序正确性证明。 缺点: (1)这种程序设计方法本质上是面向“过程”的,而 “过程”和“操作”又是不稳定和多变的,因此不能 直接反映人类求解问题的思路。 (2)程序代码可重用性差。程序中除少数标准库函数外, 每设计一个程序时,程序员几乎从零做起。即使重用 代码,通常也是通过拷贝或编辑重新生成一份。 (3)维护程序的一致性困难。该种方法将数据与对数据 进行处理的程序代码分离。 返回 3
2.1 从面向过程的程序设计到面向对象的程序设计 2.1.2 面向对象的程序设计(Object-Oriented Programming ----OOP)方法 1. 面向对象的有关概念 面向对象的程序设计方法强调直接以问题域(现实世 界)中的事物为中心来思考和认识问题,并按照这些 事物的本质特征把它们抽象为对象,以作为构成软件 系统的基础。 ( 1 ) 对 象 ( O b j e c t ) : 每 个 对 象 都 具 有 属 性 (Attribute)和方法(Method)这两方面的特征。对 象的属性描述了对象的状态和特征,对象的方法说明 了对象的行为和功能,并且对象的属性值只应由这个 对象的方法来读取和修改,两者结合在一起就构成了 对象的完整描述。 返回 4
2.1 从面向过程的程序设计到面向对象的程序设计 (2)类(Class):具有相似属性和行为的一组对象, 就称为类。可见,有了类的概念以后,就可以对具有 共同特征的事物进行统一描述。 (3)封装(Encapsulation):封装把对象的属性和方 法看成了一个密不可分的整体,从而使对象能够完整 地描述并对应于一个具体事物 。 (4)继承(Inheritance):将客观事物进行归类是一 个逐步抽象的过程,反之,将类进行层层分类便是一 个概念逐渐细化的过程。 在面向对象的程序设计中,允许在已有类的基础上通过 增加新特征而派生出新的类,这称为继承。其原有的 类称为基类(base class),而新建立的类称为派生 类。 返回 5
2.1 从面向过程的程序设计到面向对象的程序设计 (5)消息(Message):在面向对象的程序设计中,由 于对象描述了客观实体,它们之间的联系通过对象间 的联系来反映。当一个对象需要另外一个对象提供服 务时,它向对方发出一个服务请求,而收到请求的对 象会响应这个请求并完成指定的服务。这种向对象发 出的服务请求就称为消息。 (6)多态性(Polymorphism):多态性是面向对象的另 一重要特征。在通过继承而派生出的一系列类中,可 能存在一些名称相同,但实现过程和功能不同的方法 (Method)。  所谓多态性是指当程序中的其他部分发出同样的消息 时,按照接收消息对象的不同能够自动执行类中相应 的方法。其好处是,用户不必知道某个对象所属的类 就可以执行多态行为,从而为程序设计带来更大方便。 返回 6
2.1 从面向过程的程序设计到面向对象的程序设计 2. 面向对象的程序设计方法(OOP方法)  这种方法将设计目标从模拟现实世界的行为转向了模 拟现实世界中存在的对象及其各自的行为。  在OOP中,将“对象”作为系统中最基本的运行实体, 整个程序即由各种不同类型的对象组成,各对象既是 一个独立的实体,又可通过消息相互作用,对象中的 方法决定要向哪个对象发消息、发什么消息以及收到 消息时如何进行处理等。 数据 方法 消息 消息 返回 7
2.1 从面向过程的程序设计到面向对象的程序设计 3.OOP方法的特点 (1)OOP以“对象”或“数据”为中心。由于对象自然地反映了应 用领域的模块性,因此具有相对稳定性,可以被用作一个组件去 构成更复杂的应用,又由于对象一般封装的是某一实际需求的各 种成分,因此,某一对象的改变对整个系统几乎没有影响。 (2)引入了“类”(class)的概念。类与类以层次结构组织,属 于某个类的对象除具有该类所描述的特性外,还具有层次结构中 该类上层所有类描述的全部性质,OOP中称这种机制为继承。 (3)OOP方法的模块性与继承性,保证了新的应用程序设计可在原 有对象的数据类型和功能的基础上通过重用、扩展和细化来进行, 而不必从头做起或复制原有代码,这样,大大减少了重新编写新 代码的工作量,同时降低了程序设计过程中出错的可能性,达到 了事半功倍的效果。 返回 8
分享到:
收藏