当前位置:
文档之家› c 类和对象的概念及定义PPT课件
c 类和对象的概念及定义PPT课件
对象之间通过发送和接收消息互相联系的。见图2所 示。
13.11.2020
图1 对象
图2 对象的联系
8
1.面向对象程序设计方法
使用面向对象的程序设计方法设计软件系统时,首要 的问题是确定该系统是由哪些对象组成的,并且设 计这些对象。
在C++中,每个对象都是由数据和函数(即操作代码) 这两部分组成的。
色),“马”是父类,或称为基类,“白马”是从“马” 派生出来的,称为子类或派生类。
13.11.2020
14
2.面向对象程序设计的基本特征
(4)多态性(polymorphism) 含义:如果有几个相似而不完全相同的对象,有时人
们要求在向它们发出同一个消息时,它们的反应各 不相同,分别执行不同的操作。这种情况就是多态 性。 在C++中,多态性是指:由继承而产生的相关的不
属性(attribute)和行为(behavior) 。
张三
比如:
A.学生“张三”是一个对象,他有属性:学号、姓
名、性别等。行为有:学习、吃饭等。
B.“打开文件按钮”也是一个对象,它有属性:形 状、颜色、大小等。行为有:打开文件等。
13.11.2020
7
1.面向对象程序设计方法
在C++程序设计中,属性即基本数据;行为即操作代 码,也就是函数,见图1所示。
成一个基本单位,各个对象之间相对独立,互不干 扰。 二是将对象中某些部分对外隐蔽,即隐蔽其内部细节, 只留下少量接口,以便与外界联系,接收外界的消 息。 这种对外界隐蔽的做法称为信息隐蔽(imformation hiding)。信息隐蔽还有利于数据安全,防止无关的 人了解和修改数据。
13.11.2020
可以对一个对象进行封装处理,把它的一部分属性和 功能对外界屏蔽,也就是说从外界是看不到的,甚至 是不可知的。
这样做的好处是大大降低了操作对象的复杂程度。 面向对象程序设计方法的一个重要特点就是“封装性”
(encapsulation)。
13.11.2020
11
2.面向对象程序设计的基本特征
所谓“封装”,指两方面的含义: 一是将有关的数据和操作代码封装在一个对象中,形
题的思路是相似的。 面向对象的程序设计的基本思路:
众多零件
生产汽车
组装
面向对象的程序设计: (对象+对象+对象+…) + 消息 = 程序
13.11.2020
6
1.面向对象程序设计方法
(2)对象
含义:客观世界中任何一个事物都可以看成一个对象
(ห้องสมุดไป่ตู้bject)。
对象可大可小。对象是构成系统的基本单位。
任何一个对象都应当具有这两个要素:
程序设计者的任务包括两个方面: 一是设计所需的各种类和对象,即决定把哪些数据和
操作封装在一起; 二是考虑怎样向有关对象发送消息,以完成所需的任
务。
13.11.2020
16
3.面向对象的程序设计含义
面向对象程序设计的表示: 对象 = 算法 + 数据结构 程序 = (对象+对象+对象+…) + 消息
面向对象程序设计方法是十分有效的,它能大大降低 程序设计人员的工作难度,减少出错机会。
同的类,其对象对同一消息会作出不同的响应。
比如: 在Windows环境下,用鼠标双击一个文件对象(这就是
向对象传送一个消息),如果对象是一个可执行文件, 则会执行此程序,如果对象是一个文本文件,则启 动文本编辑器并打开该文件。
13.11.2020
15
3.面向对象的程序设计含义
面向对象的程序设计含义: 它的整个程序由一系列相互作用的对象构成,对象 之间的交互通过发送消息来实现,通过对象响应消 息来实现程序的功能。
13.11.2020
2
第3讲 类和对象的概念及定义
授课要求 1.掌握类的概念、类的定义格式、类与结构的关系、
类的成员属性和类的封装性; 2.掌握类对象的定义; 3.理解类的成员的访问控制的含义,公有、私有和
保护成员的区别。 4.能够根据给定的要求定义类并实现类的成员函数;
13.11.2020
3
第3讲 类和对象的概念及定义
13
2.面向对象程序设计的基本特征
(3)继承与重用(inheritance)
“学生” 类
增加属性:“专业”
“大学生”类
继承机制
继承:在一个已有的类上建立一个新的类。
C++提供了继承机制,可以很方便地利用一个已有的 类建立一个新的类。即“软件重用” 。
例如: “白马”继承了“马”的基本特征,又增加了新的特征(颜
13.11.2020
17
4、面向对象的分析和设计
13.11.2020
18
面向对象的分析
——基本概念
OOA环节的主要工作是明确用户的需求,并用标准化 的面向对象模型规范地描述这一需求,最后形成面 向对象的分析模型,即OOA模型。它主要确定要干 什么(“What to do”)。
12
2.面向对象程序设计的基本特征
(2)抽象(abstraction) 在程序设计方法中,常用到抽象这一名词。抽象的过
程是将有关事物的共性归纳、集中的过程。 抽象的作用是表示同一类事物的本质。 比如:
把在座的同学的共同特性抽出来:学号、姓名、性别、 学习等。把大家都可以归到一类,即“学生”类。
13.11.2020
普通高等教育“十一五”国家级规划教材 中国高等院校计算机基础教育课程体系规划教材
C++面向对象程序设计
13.11.2020
1
第3讲 面向对象概述
授课内容 类和对象的概念以及它们的定义。主要内容有: 1.类和对象的基本概念; 2. 面向对象分析与设计
3. UML 4.类的声明; 5.对象及其定义; 6.类的成员函数; 7.对象成员的引用。
13.11.2020
9
1.面向对象程序设计方法
(3)类(class) 含义:具有相同属性和行为的所有对象的集合。 比如: 所有在校学习的人,具有相同的属性:学号、姓名、
性别等,具有相同的行为:学习。所以,这些人构 成一个类,即学生类。
13.11.2020
10
2.面向对象程序设计的基本特征
(1)封装与信息隐蔽(encapsulation and imformation hiding)
授课重点 1.本讲的重点是类和对象的概念和定义
授课难点 1.该讲的难点是类和对象的理解。
13.11.2020
4
1.面向对象程序设计方法
(1)概述
面向过程的程序设计
小规模
大规模
力不从心
面向对象程序设计
13.11.2020
5
1.面向对象程序设计方法
(1)概述
面向对象的程序设计的思路和人们日常生活中处理问