网站大量收购独家精品文档,联系QQ:2885784924

面向对象程序设计之类和对象解析.ppt

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计之类和对象解析

Object-Oriented Programming in C++ 第二章 类和对象 2.1 面向对象程序设计方法概述 什么是面向对象的程序设计? 面向对象的程序设计(Object-Oriented Programming )和传统的结构化程序设计的思路完全不同。 面向对象的程序设计和人们日常生活解决问题的思路是相似的。 比如,我们生产汽车时,不是顺序制造发动机,在设计制造底盘、车身、轮子。而是分别设计制造发动机、底盘、车身和轮子,最后组装在一起。组装时,各部件之间有联系,以便协调工作。例如,司机踩油门,就能调节油路,控制发动机的转速,就能驱动车轮。 2.1 面向对象程序设计方法概述 程序设计者的任务有两个:一是设计所需要的类和对象,即确定那些数据和操作封装在一起;(类设计者、核心模块产品提供商) 二是考虑怎样向有关对象发送消息,以启动相关对象的操作。 (主程序设计者,外包程序,面向用户的公司) 编程者如同一个总调度,不断地向各个对象发出命令,让这些对象活动起来,完成指定的工作。 这就是面向对象的程序设计的基本思路。 2.1 面向对象程序设计方法概述 什么是对象(object)? 一个对象由一组“属性”和一组“行为”构成。并根据外界给它的消息进行相应的操作。系统中多个对象通过一定的渠道相互联系。 任何事物都可以看成一个对象。可以是自然物体,也可以是逻辑结构。 例: 一个班级作为对象 一个班级作为对象,有两个要素:一是班级的静态特征,如班级所属的专业,学生人数、班主任姓名等,这种静态特征称为“属性”;另一个是班级的动态特征,如上课,体育比赛,开会等,称为“行为”。外界向班级发一个信息(如上课铃声,广播通知),我们称之为“消息”,班级就会发生一个操作(要么上课,要么开会) 2.1 面向对象程序设计方法概述 什么是C++对象? C++中,每个对象都由若干数据(属性)和若干函数(操作行为)组成。数据就是对象的“属性”,函数就是用来对数据进行的“操作”,以便实现某种功能。这种操作就是对象的“行为”,也叫“方法”。 我们点击一下鼠标,按动键盘的一个按钮,就是给某个对象一个消息,系统回调用该对象中的函数进行操作。 比如长方形对象,其长和宽就是它的属性,调用该对象的一些函数,即向该对象传送一些消息,可以用来对其长、宽值进行加工计算,以实现求出面积、周长等功能。 2.1 面向对象程序设计方法概述 什么是对象封装(encapsulation )? 就是把对象的不想让外界知道的属性和功能屏蔽起来,让外界看不见。封装有两个含义, 一是将有关的数据和操作函数封装成一个基本单位,即对象内。各对象之间相互独立,互不干扰; 二是将对象中的部分属性或功能对外隐蔽,只留少数接口向外公布,以接收外界信息。 对象封装的好处在于,降低了人们操作对象的复杂程度。使用对象的人,不必知道对象内部的实现细节,只需要了解外部功能就可以自如地操作该对象。 对象的行为由类的内部数据结构和相关的操作确定;外部行为通过操作接口实现。人们关心的就是操作接口(函数名)所能提供的服务。 2.1 面向对象程序设计方法概述 什么是抽象(abstraction)? 将具有相同特性的事物归纳、集中成一个统一类型,称为抽象。比如,把张三,李四,王五归纳为一类,我们称之为“人”。 抽象的作用,是表示同类事物的本质。 C和C++中,数据类型就是对一批具体数据的抽象,整形数据就是所有整数的抽象。 “类”是“对象”的抽象,“对象”则是类的“特例”,或“具体表现形式”。 2.1 面向对象程序设计方法概述 什么是继承( inherit )? B类在A类的基础上增加了少量内容。我们显然不必重新设计一个新类B,只需要把A类拿过来,在此基础上添加新内容就可以了。这就是面向对象程序设计的继承机制。 C++提供继承机制,大大节省了编程工作量,这就是所谓“软件重用( software reusability )”的思想。对于大型软件的开发具有重要意义。 2.1 面向对象程序设计方法概述 什么是多态性( polymorphism )? 如果有几个相似而不同的对象,人们往往要求在向它们发出同一个消息时,各自作出不同的操作,这种情况就是“多态现象”。 C++中,所谓多态性是指,由继承而产生的相关的不同的类,其对象对同一消息会作出不同的响应。 显然,多态性能增加程序的灵活性,它是面向对象程序设计的重要特征。 2.1 面向对象程序设计方法概述 类与对象的作用 C++全面支持传统的面向过程的程序设计(即结构化编程),也支持基于对象和面向对象的程序设计。 所谓基于对象,是指程序是以类和对象为基础,程序的

文档评论(0)

4477704 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档