讲稿Chapter2-类和对象.ppt_第1页
讲稿Chapter2-类和对象.ppt_第2页
讲稿Chapter2-类和对象.ppt_第3页
讲稿Chapter2-类和对象.ppt_第4页
讲稿Chapter2-类和对象.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章 类和对象 2 本章内容 2 1面向对象程序设计方法概述 2 2类的定义 2 3对象的定义 2 4对象成员的引用 2 5类和对象的简单应用举例 2 6类的封装性和信息隐蔽 3 目标 理解面向对象程序设计思想 理解类和对象的概念以及二者之间的关系 掌握类和对象的定义 掌握类的成员函数的定义 掌握对象成员的引用方法 理解类的封装性及实现 4 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 5 2 1面向对象程序设计方法概述 2 1 1什么是面向对象的程序设计 一 面向过程程序设计 程序的主体是函数 6 2 1面向对象程序设计方法概述 2 1 1什么是面向对象的程序设计 一 面向过程程序设计由E Dijkstra等人于20世纪70年代提出 缺点 无法适用较大规模的程序的开发 程序的可重用性较差 7 2 1面向对象程序设计方法概述 2 1 1什么是面向对象的程序设计 二 面向对象程序设计20世纪80年代左右提出 基本思想 程序的编写围绕 对象 来进行 8 2 1面向对象程序设计方法概述 2 1 1什么是面向对象的程序设计 二 面向对象程序设计 程序的主体是对象 9 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 一 对象客观世界中任何一个事物或实体就是对象 例如 一辆汽车 一只小狗乃至一种语言 一个图形 一种管理方式 都可以作为一个对象 10 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 一 对象对象具有两个要素 属性 表示一个对象的静态特征 方法 行为 对象的动态功能 属性 名称品种颜色行为 犬吠吃东西睡觉 11 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 一 对象属性 数据进行描述 数据成员方法 函数来实现 成员函数 12 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 二 类一组具有相同特征的对象的属性和方法的描述就称为类 类是对象的抽象 对象是类的实例 程序设计时 分析对象的属性和方法 定义类类型 定义该类的对象 调用方法实现功能 13 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 二 类一组具有相同特征的对象的属性和方法的描述就称为类 例如 输入圆的半径 计算圆的周长和面积面向对象程序设计方法实现 14 2 1面向对象程序设计方法概述 2 1 2面向对象的程序设计的基本概念 三 面向对象程序设计的三大特性1 封装性2 继承性3 多态性 15 2 1面向对象程序设计方法概述 2 1 3面向对象的软件开发面向对象的软件工程包括 1 面向对象分析 OOA 2 面向对象设计 OOD 3 面向对象编程 OOP 4 面向对象测试 OOT 5 面向对象维护 OOSM 16 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 17 2 2类的定义 2 2 2类的定义 一 定义格式class类名 private 私有数据成员和成员函数 public 公有数据成员和成员函数 protected 保护数据成员和成员函数 18 2 2类的定义 2 2 2类的定义 二 成员访问权限 表示该成员能否被访问的属性 1 私有的 private特点 只能被本类的成员函数引用 默认权限 2 公有的 public特点 本类的成员以及所有对象可以引用 3 保护的 protected 19 2 2类的定义 2 2 3类的数据成员定义格式数据类型成员名 其中 数据类型可是是基本数据类型 也可以是构造数据类型 例如 定义表示圆的类 Circle 定义表示学生的类 Student 20 classCircle private doubler 1 定义表示圆的类 Circle 例 21 classStudent private intnum 学号stringname 姓名charsex 性别 2 定义表示学生的类 Student 例 22 2 2类的定义 2 2 3类的数据成员定义格式数据类型成员名 其中 数据类型可是是基本数据类型 也可以是构造数据类型 注意 不能在定义时对数据成员赋初值 23 2 2类的定义 2 2 4类的成员函数用于描述对类中的数据成员实施的操作 类的成员函数是函数的一种 定义方式分为 一 在类体中定义成员函数 二 在类体中声明 在类外定义成员函数 24 2 2类的定义 2 2 4类的成员函数定义方式分为 1 在类体中定义成员函数class类名 返回值类型成员函数名 参数 25 2 2类的定义 2 2 4类的成员函数定义方式分为 2 在类体中声明 在类外定义成员函数 class类名 返回值类型成员函数名 参数 26 2 2类的定义 2 2 4类的成员函数定义方式分为 2 在类体中声明 在类外定义成员函数 函数类型类名 成员函数名 参数表 函数体 27 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 28 2 3对象的定义 2 3 1对象的定义定义格式 class 类名对象名其它定义方式见P47 29 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 30 2 4对象成员的引用 2 4 1通过对象名和成员运算符访问对象中的成员访问格式 对象名 数据成员对象名 成员函数 实参列表 Qs 该对象的所有数据成员和成员函数都能访问吗 31 2 4对象成员的引用 2 4 2通过指向对象的指针访问对象中的成员指向对象的指针 类名 对象指针名 对象 访问格式 对象指针 数据成员对象指针 成员函数 实参列表 32 2 4对象成员的引用 2 4 3通过对象的引用变量来访问对象中的成员指向对象的引用变量 类名 引用对象名 对象名 访问格式 引用对象名 数据成员引用对象名 成员函数 实参列表 33 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 34 2 5类和对象的简单应用举例 例2 1定义一个表示时钟的类 Time 1 分析 该类有哪些数据成员 时分秒 35 classTime public inthour intminute intsec 36 intmain Timet1 cin t1 hour cin t1 minute cin t1 sec cout t1 hour t1 minute t1 sec endl 37 intmain Timet1 cin t1 hour t1 minute t1 sec cout t2 hour t2 minute t2 sec cout t2 hour t2 minute t2 sec endl 多个对象时 38 封装成函数 voidset time cin t hour t minute t sec voidshow time Time Time t 39 intmain Timet1 set time t1 show time t1 Timet2 set time t2 show time t2 return0 40 封装成类成员函数 classTime public voidset time voidshow time private inthour intminute intsec 41 voidTime set time cin hour minute sec voidTime show time cout hour minute sec endl 42 intmain Timet1 t1 set time t1 show time Timet2 t2 set time t2 show time return0 43 2 5类和对象的简单应用举例 例2 1定义一个表示时钟的类 Time 1 分析 该类有哪些数据成员 该类有哪些成员函数 2 类的具体实现3 main函数中定义Time类的对象 并调用其成员函数实现功能 44 本章内容 2 1面向对象程序设计方法概述2 2类的定义2 3对象的定义2 4对象成员的引用2 5类和对象的简单应用举例2 6类的封装性和信息隐蔽 45 2 6类的封装性和信息隐蔽 2 6 1公用接口与私有实现的分离2 6 2类声明和成员函数定义的分离2 6 3面向对象程序设计的几个名词 46 总结 本章主要讲授内容面向对象程序设计对象 类封装性 继承性和多态性类的定义对象的定义对象成员的引用 47 实验安排 下周二第3单元上机

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论