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

引言--面向对象程序设计概述.ppt

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

主要内容 面向对象程序设计概述 类和对象 构造函数与析构函数 继承和派生类 类的其他特性 运算符重载 输入输出流 课时安排 理论学习40学时+上机实验8学时 课外上机实验8学时 面向对象程序设计概述 面向对象和面向对象程序设计 面向对象程序设计的基本概念 面向对象软件的重要特性 一、面向对象和面向对象程序设计 什麽是面向对象 对象(object)– 任何可以被感觉到的事物。 面向(oriented)– 直接面对,以对象为中心。 面向对象(Object Oriented)– 直接面对你能感觉到的任何事物。 面向对象编程(Object Oriented Programming)–直接面对软件所要模拟的客观世界中的事物,将它们直接映射到软件系统的解空间中,成为组成软件的对象。 面向对象VS.面向过程程序设计 面向过程程序设计 例如,一个学校管理软件中可以包含如下的数据结构和操作: typedef struct student typedef struct teacher { { char name[10]; char name[10]; long num; double salary; int age; int age; char sex; char sex; } student; } teacher; void enroll(student* ptr) void raise(teacher* ptr) { { ... … ptr-num++; ptr-salary += 100; } } void print(student* ptr) void print(teacher* ptr) { { ... … } } main() { ... student Zhang; // 定义学生数据模块 teacher Li; // 定义教师数据模块 enroll(Zhang); // 操作与被操作数据匹配 enroll(Li); // 操作与被操作数据失配 print(Zhang); // 操作与被操作数据匹配 ... } 面向对象VS.面向过程程序设计 面向对象程序设计(Object Oriented Programming) 吸取结构化程序设计的一切优点,又考虑了所模拟的现实世界与程序解空间的直接映射关系; 采用数据抽象和信息隐藏技术使得数据和(施加于数据的)操作成为不可分割的整体; 程序由类定义、类实例(对象)和对象之间的动态联系组成; 程序的重用性好、易于维护和扩展 较好地解决了软件复杂性控制和生产率的提高。 用面向对象的设计方法实现前例的功能: class student // 类定义 { // 属性 char name[10]; long num; int age; char sex; // 方法 public: void enroll(){ ... }; friend ostream operator(ostream out, student stud) { ... }; ... }; class teacher // 类定义 { // 属性 char name[10]; double salary; int age; char sex; // 方法 public: void raise(){ ... }; friend ostream operator(ostream out, teacher teach) { ... }; ... }; main() { ... // 类实例 —— 对象 student Zhang; teacher Li; // 对象方法调用 Zhang.enroll(); Li.raise(); cout Zhang; cout Li; ... } 面向对象程序设计的方法 建立模型 模型是对事物特征和变化规律的一种抽象,是对客体认识的深化。 面向对象程序设计语言 Simula 引入了数据抽象概念以及类和继承机制。 Ada,Modula-2 等语言在它的基础上发展起来。 Smalltalk 第一个真正的面向对象的程序设计语言。该语言引入和完善了类、方法、实例等概念,应用了继承和动态链接机制,是一种完全面向对象的程序设计语言。 面向对象程序设计语言 LISP 语言家族 是一种以表处理表达为特色的人工智能程序设计语言。70 年代以来,在 LISP 的基础上开发出许多 LISP 家族的面向对象程序设计语言,

文档评论(0)

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

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

1亿VIP精品文档

相关文档