- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
20世纪80年代以来,面向对象语言得到飞速发展 。 面向对象程序设计语言朝着两个方向发展: 一个方向是朝着纯面向对象语言发展,如继Smalltalk之后,又出现了Eiffel、SELF等语言; 另一个方向是朝着混合型面向对象语言发展,如将过程型与面向对象结合产生了诸如 C++、Objective-C、Object Pascal 等一大批语言。将函数型与面向对象结合产生了诸如 LOOPS、 Flavors、 CLOS等语言。 我们将要学习的 C++就是一种面向过程与面向对象相结合的语言。 * 1.3.2 几种典型的面向对象程序设计语言 (1) Smalltalk语言(20世纪70年代) Smalltalk语言被认为是最纯正最具代表性的面向对象的程序设计语言 (2) C++语言 (20世纪80年代) C++是在C语言的基础上,进行面向对象特征的扩充而成的语言 (3) Java语言( 20世纪90年代) Java语言,是一种面向对象的程序设计语言,是一种网络编程语言。 (4) C#语言 (21世纪2000年) C#语言从C/C++语言继承发展而来,是一个全新的、面向对象的、现代的编程语言。 * * * * * * * * * * * * * * * 在面向对象程序设计中,对象之间的联系,称为对象的交互。 在面向对象程序设计中,一个对象向另一个对象发出的请求被称为“消息” 。 3.消息 * 消息具有三个性质: (1) 同一个对象可以接收不同形式的多个消息,作出不同的响应; (2) 相同形式的消息可以传递给不同的对象,所作出的响应可以是不同的; (3) 接收对象对消息的响应并不是必须的,对象可以响应消息,也可以不响应。 * 调用对象中的函数就是向该对象传送一个消息,要求该对象实现某一行为(功能、操作)。 对象所能实现的行为(操作),在程序设计方法中称为方法,方法中定义了一系列的操作步骤它们是通过调用相应的函数来实现的。 实际上: 在C++语言中,方法是通过成员函数来实现的。 4.方法 * 1.1.3 面向对象程序设计的基本特征 1. 抽 象 2. 封 装 3. 继 承 4. 多 态 本节主要内容 * 1. 抽 象 现实生活中: 张三、李四、王五、…... --- 人 苹果、梨、桔子、香蕉 …... ---水果 抽象的过程是将有关事物的共性归纳、集中的过程。 * 在程序设计方法中: 抽象是对复杂世界的简单表示,抽象并不打算了解全部问题,而只强调感兴趣的信息,忽略了与主题无关的信息。 例如,在设计一个成绩管理程序的过程中,只关心他的姓名、学号、成绩等,而对他的身高、体重等信息就可以忽略。 而在设计学生健康信息管理系统中,身高、体重等信息必须抽象出来,而成绩则可以忽略。 * 抽象包括两个方面:数据抽象和代码抽象。 数据抽象描述某类对象的共同属性; 代码抽象描述了某类对象具有的共同行为。 * 以职工人事管理系统为例,通过对所有职工进行归纳、分析,抽取出其中的共性,可以得到如下的抽象描述: 共同的属性(数据抽象部分):姓名、职工号、部门等。 用C++语言的数据成员来表示: char* name; //姓名 int number; //职工号 char* department; //成绩 共同的行为(代码抽象部分):数据录入、数据修改和数据输出等。 用C++语言的成员函数表示: input() //数据录入函数 modify() //数据修改函数 display() //数据输出函数 * 2.封装 在现实世界中,所谓封装就是把某个事物包围起来,外界是看不到的,甚至是不可知的。 例如:录音机、电视机、照相机等。 在面向对象程序设计中,封装是指把数据和实现操作的代码集中起来放在对象内部,并尽可能隐蔽对象的内部细节。 * 对象好像是一个不透明的黑盒子, 表示对象属性的数据和实现各个操作的代码都被封装
文档评论(0)