欢迎来到天天文库
浏览记录
ID:38462240
大小:984.50 KB
页数:40页
时间:2019-06-13
《面向对象程序设计语言C++第01章 引论》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、面向对象程序设计语言C++电子科技大学计算机学院陈文宇1cwy@uestc.edu.cn13808181782B1-513第一章引论1.1面向对象的目标传统的程序设计方法是模块化(或结构化)的,具体步骤为:1.整个软件系统功能逐步细化为多个小的功能—功能划分。2.每个小的功能对应由一个模块(如函数、过程、分程序、子程序等)来实现。3.多个模块合作完成较大的功能,所有模块的合作完成整个软件系统的功能。3第一章引论1.1面向对象的目标对于传统的程序设计,在设计和实现(编程)阶段考虑的是模块,程序本身也是由模块构成的。面向对象的概念与(抽象)数据类型有关。数
2、据类型是一个抽象的概念,包含有一组数据的定义和一组对该组数据操作的定义。对于数据类型的使用,必须通过类型的实际例子(实例/实体,即变量或常量)来体现。4第一章引论1.1面向对象的目标数据类型分为三种:简单数据类型:内建(built-in)类型,语言本身提供的类型。用户定义数据类型:以简单数据类型为基础,它包含多个简单数据类型成分,这些数据成分是可以直接操作的。抽象数据类型:在定义数据的同时,必须定义对数据的操作;它的数据成分是不可见的,也不可以直接操作。5第一章引论1.1面向对象的目标抽象数据类型隐藏了表示的细节,通过过程(或方法)来访问抽象数据对象。
3、对象和抽象类型的关系,类似于整型变量和整型数据类型的关系。6第一章引论1.1面向对象的目标面向对象语言中的对象,就是抽象类型的实体,具体的说,是“将某组数据和使用该数据的一组基本操作封装在一起而形成的一个实体”。操作n…操作1数据m…数据1对象的模型结构7第一章引论1.1面向对象的目标面向对象的基本思想就是把要构造的软件系统表示为对象的集合,它的目的是想在某种程度上解决软件开发面临的两大课题:怎样克服软件的复杂性怎样将现实世界模型(包括它们之间的关系)在计算机领域中自然地表示出来8第一章引论1.1面向对象的目标从软件的角度来看,计算是一种仿真。如果每一
4、个被仿真的实体都由一个数据结构来表示,并且将相关的操作信息封装进去,仿真将被简化,可以更方便地刻画对象的内部状态和运动规律。面向对象就是这样一种适用于直观模型化的设计方法。这意味着设计模型与客观对象之间有近乎一对一的对应关系。这一思想非常利于实现大型的软件系统。9第一章引论1.1面向对象的目标作为克服软件复杂性的手段,在面向对象的方法中,利用了如下对象的性质:将密切相关的数据和过程封装成为一个实体;定义了一个实体后,即使不知道此实体的功能是怎样实现的,也能使用它。10第一章引论1.1面向对象的目标面向对象设计非常注重设计方法。实际上,用面向对象方法编程
5、的关键是模型化。11第一章引论1.1面向对象的目标面向对象的目标可以归纳为:对试图利用计算机进行问题求解和信息处理的领域,尽量使用对象的概念,将问题空间中的现实模型映射到程序空间。由此得到的自然性可望克服软件的复杂性,从而得到问题得求解和信息处理的高性能。12第一章引论1.2面向对象语言的核心概念1.2.1数据封装DataEncapsulation面向过程语言的做法AttributeN…Attribute2Attribute1DataFunctionsFunctionM(Data,…);…Function2(Data,…);Function1(Data
6、,…);13第一章引论1.2面向对象语言的核心概念1.2.1数据封装DataEncapsulation面向过程语言的做法:实例DateofBirth…SexNamePersonFunctionsGet_Sex(Person,…);…Set__Birth_Date(Person,…);Set_Name(Person,…);14第一章引论1.2面向对象语言的核心概念1.2.1数据封装DataEncapsulation面向对象语言的做法AttributeN…Attribute2Attribute1ObjectMethodM(…);…Method2(…);Me
7、thod1(…);15第一章引论1.2面向对象语言的核心概念1.2.1数据封装DataEncapsulation面向对象语言的做法:实例DateofBirth…SexNamePersonGet_Sex(…);…Set__Birth_Date(…);Set_Name(…);16第一章引论1.2面向对象语言的核心概念1.2.1数据封装DataEncapsulation面向对象语言采用了抽象的方法。而抽象的原则之一就是信息隐藏。数据封装将一组数据和这组数据相关的操作集合封装在一起,形成了一个能动的实体,成为对象。用户不必知道对象行为的实现细节,只需根据对象提
8、供的外部特性接口访问对象。在C++中,实现数据封装的机制是“类(class)”。在Java和C
此文档下载收益归作者所有