好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

程序设计语言讲义(共25页).ppt

25页
  • 卖家[上传人]:1537****568
  • 文档编号:216141814
  • 上传时间:2021-11-28
  • 文档格式:PPT
  • 文档大小:193.50KB
  • / 25 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 电子科技大学计算机学院黄迪明黄迪明 1第一章第一章C+C+入门入门一、面向对象的方法是在计算机语言发展过程一、面向对象的方法是在计算机语言发展过程中产生的中产生的 早期:机器语言、汇编语言 50年代中期:FORTRAN语言引进了许多现代仍然使用的程序设计概念 50年代后期:ALGOL60提出块结构的思想 60年代:SIMULA67首先提出对象和类的概念,并支持类的继承,是面向对象语言的鼻祖 70年代:ADA不能全面地支持继承,称为基于对象的语言 1.1 1.1 面向对象的由来和发展面向对象的由来和发展 后来出现的Smalltalk是最有影响的面向对象的语言之一 80年代中后期以后,随着面向对象的程序设计语言的广泛应用,出现了更多的面向对象的语言 面向对象的语言可分为以下两类:1 1、开发全新的面向对象的语言、开发全新的面向对象的语言 ObjectC Eiffel Smalltalk802 2、对传统语言进行面向对象的扩展,、对传统语言进行面向对象的扩展,称为混合型语言,其代表有C+语言增加面向对象程序设计的支持增加面向对象程序设计的支持支持传统的面向过程的程序设计C+C CC+ 语言具有C语言的丰富的应用基础和开发环境的支持,对于已经掌握C语言的人讲,更易学易普及。

      二、从C到C+ C语言是贝尔实验室为DEC公司开发PDP系列计算机操作系统时研制的C作为UNIX操作系统的开发语言而广为应用和流行1989年制定为ANSI C标准1、语言简洁、紧凑,使用方便、灵活2、运算符和数据类型丰富3、访问内存地址、寄存器、进行位操作, 具有汇编语言的功能4、生成的目标代码质量高、程序运行效率高C语言的独有特点是: 局限: 1、对类型的检查机制相对较弱、程序中的一些错误不能在编译时发现; 2、无支持代码重用的语言结构; 3、当程序规模达到一定的程度时,难以控制程序的复杂性; 为满足管理程序复杂性需要,1980年,贝尔实验室对C进行了改进和扩充:“带类的C”C1983年取名为C+,后经过三次修订1994年制定了ANSI C+标准的草案1、C+是C的扩展,C是C+的子集,C+ 包括C的全部特征、属性和优点同时,增加了对面向对象编程的完全支持2、与C 一致, C+程序结构采用函数驱动机制实现3、C+实现了类的封装,数据隐藏、继承及多态,使其代码可重用并容易维护4、C+是一门高效使用的程序设计语言,既可进行过程化程序设计,又可进行面向对象程序设计C+C+的特点的特点在面向过程的程序设计中,程序是处理数据的一系列过程。

      过程(或函数)定义为实现特定功能的一组指令其主要设计思想是功能分解并逐步求精数据与程序过程分开存储,编程的主要技巧在于关注模块之间的调用关系及数据的变化1.2 面向过程的程序设计 1、当数据量增大时,数据与处理这些数据的方法之间的分离使程序变得越来越难以理解 2、相对于老问题的新方法都要带来额外的开销,程序的可重用性小面向过程程序设计的主要缺点面向对象程序设计 OOP (Object-Oriented Programming)的三要素: 对象、类和继承面向对象程序设计的实现需要: 封装和数据隐藏技术 继承和多态性技术1.3 1.3 面向对象程序设计面向对象程序设计1 1、封装和数据隐藏、封装和数据隐藏 什么是对象? 概念上:在问题空间中,将客观世界的实体称为对象对象可以是人、物、事件、规则、概念等 例如:开发一个商品销售系统 实现上:把数据和处理数据的过程(操作或方法)当成一个整体,这个封装体就称为对象数据1.数据n操作1.操作n 状态(数据结构和值)方法对象的模型结构例如:电脑装配声卡,早点销售点 无须知道封装体内部是如何工作就能使用的思想称为数据隐藏 对象实现了信息隐藏; 对象与外部通过操作接口联系,操作接口提供了对象的功能,操作的具体实现外部是不可见的。

      对象之间是通过消息传递信息 对象是由特定的类创造的,什么是类? 类是创建对象的样板,它包含着所创建对象的状态描述和方法的定义 由一个特定的类所创建的的对象也称为这个类的实例 一个类的所有对象都有相同的数据结构,并且共享相同的实现操作的代码,而各个对象又有具体的不同的状态类和对象类似于面向过程语言中数据类型和变量 例如:学生类和某个学生对象2、继承和重用 制造一种新型号的电视机可以有两种选择:1)从草图开始重新设计2)对现有型号加以改进(继承和重用) C+采用继承机制支持重用,不仅可重用具有特定功能的类,而且继承可以由已有的类创造新的类 新类共享已有类的属性,自己还具有额外添加的属性,新类是从已有类派生的,称为派生类或子类,已有类称为父类或基类 在客观世界中,存在着整体和部分的关系、一般和特殊的关系,继承将后者模型化 汽车类, 各类汽车 昆虫类, 各类昆虫3、多态性 封装性、继承性、多态性是构成面向对象程序设计的三大特征 封装性是基础 继承性是关键 多态性是补充什么是多态性? 多态是指一个名字有多种语义,或一个相同界面有多种实现; 或是指发出同样的消息被不同类型的对象接受而导致完全不同的行为。

      即对象根据所接收到的消息做出相应的操作例如:在学籍管理系统中学生类(基类)计算成绩的操作中学生类(派生类)计算成绩的操作大学生类(派生类)计算成绩的操作又如:在绘图系统中使用的多态性函数重载和运算符重载表现了最简单的多态性 函数重载: Void f(int,int,char); Void f(char,float); Void f(int,int); Void f(int,float); 运算符重载: 为运算符+ - * / 等赋以新的含义,以实现类对象的运算编译错连 接编 辑编 译运 行连接错运行错YYYNNN完 成#include文件C+库文件.CPP 源程序.obj目标程序.exe 可执行程序#include文件1.4 1.4 程序开发过程程序开发过程例1:/*/*ch1.1.cpp*/*# include void main( ) cout “I am a student.n”; 1.5 最简单的程序运行结果为: I am a student. 例例 2 2: : /* ch1.2.cpp * #include void main( ) int a,b,result; cout a b; result=3*a-2*b+1; cout “Result is ” resultch1.2Please input two numbers:100 50Result is 201 C+程序是由函数构成的,由一个主函数和若干个函数构成。

      C+程序是函数驱动的例3:/*ch1.3.cpp* #include #include double max(doubl x, doubl y); void main( ) double a, b, c; cout ab; c=max(a,b); cout “The squart of maximum=”y) return x; else return y;运行结果:Input two numbers:,The squart学习本课程目的 1、作为面向对象程序设计入门,领会面向对象程序设计的基本概念 2、把握C+程序设计的基本要点,掌握面向对象程序设计的方法和要求。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.