第1章面向对象基础知识

更新时间:2023-06-12 01:24:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C++经典课件

C++面向对象程序设计Object-Oriented Programming in C++

C++经典课件

课程概述 (Course Outline)第一章 面向对象的基础知识 第二章 C++编程基础 第三章 C++的函数 第四章 对象和类 ( Object & Class ) 第五章 类的应用 第六章 运算符的重载 (Overloading Operators)2

C++经典课件

第七章 继承 (Inheritance) 第八章 虚函数与多态性 (Virtual function & Polymorphism) 第九章 C++的I/O (Input & Output) 第十章 模板和异常 (Template & Exception) 第十一章 标准模板库 (STL Standard Template Library) 第十二章 面向对象程序设计技术3

C++经典课件

第一章 面向对象的基本知识1. 面向对象程序设计诞生的原因 1.1 面向过程语言 1.2面向对象的程序设计 2. 面向对象语言的特征2.1 封装 2.2 继承 2.3 多态

3. C++和 C 4. 面向对象的软件开发 5. UML 建模语言4

C++经典课件

概述 本章将介绍面向对象程序设计 (Object-Oriented Programming, OOP) 诞生的原因,为什么需要 OOP,有什么它可以做到,而传统 的编程语言如C, Pascal, BASIC 却做 不到的? OOP 需要遵循什么原则? C++和C语言之间有什么联系?为 什么需要用UML?5

C++经典课件

1. 面向对象程序设计诞生的原因1.1 面向过程语言 (Procedural Language) C, Pascal, FORTRAN, 以及其它的语言, 都被称为面向过程的语言,也就是说, 这些语言中的每一个语句都在告诉计 算机该做什么:接受输入,求和,除 以3,显示输出等等。 当程序变大时,一个面向过程的程序 被划分成了多个函数,每个函数都有 明确的定义及实现。6

C++经典课件

把大量的函数聚集到一起就形成一 个模块(module) ,这样的模块常 常是一个文件。 把程序划分为函数和模块是结构化 程序设计(structured programming) 的基石

C++经典课件

1.1.1 面向过程设计的问题 随着项目复杂度的增加,面向过程 设计也显得使项目越来越难以维护, 管理。 原因是什么?有两个相互关联的问 题:– 函数能够不受限制地访问全局变量 – 函数和数据之间缺乏联系。8

C++经典课件

1.1.2 面向过程范例 在大型程序中,有非常多的函数和全局数据, 它们之间有巨大的潜在连接。大量的连接会 导致程序结构很难概念化,而且使得程序很 难修改。全局变量全局变量 全局变量

函数

函数

函数

函数

C++经典课件

1.2 面向对象的程序设计–与结构化程序设计方法相比,更 符合人类认识现实世界的思维方 式 –已成为程序设计的主流方向

C++经典课件

1.2.1 现实世界建模对象 –现实世界中 万物皆对象 都具有各自的属性(名词),对外界都 呈现各自的行为(动词) 属性: 对于人,眼睛的颜色,职位是属性。 行为:行为是现实世界中的对象对于某些刺 激的反应。11

C++经典课件

–程序中 一切都是对象 都具有标识 (identity), 属性和行为 (behavior)

–现实世界中的属性相当于程序中的数 据,它们都有一个特定的值。 –行为就如同一个函数,通过函数 (function) 实现他的行为, 即为了做某 事调用一个函数,然后该函数再执行 请求。12

C++经典课件

例:

–钟表 数据(属性)–int Hour; int Minute; int Second;

方法(行为)–SetTime(); ShowTime();

C++经典课件

例: –学生 数据(属性)–String name; int ID; int Eng; int Math;

方法(行为)–统计成绩 getEng(), getMath() getTotal()

C++经典课件

类 将属性及行为相同或相似的对象归为一 类。 类可以看成是对象的抽象,代表了此类 对象所具有的共有属性和行为。 可以将现实生活中的对象经过抽象,映 射为程序中的对象。对象在程序中是通 过一种抽象数据类型来描述的,这种抽 象数据类型称为类(Class)。 对象是类的具体实例。15

C++经典课件

2. 面向对象语言的特征(C++) 对象(Object):当采用一门面向对象语 言来解决程序设计问题时,不用再问如 何将问题划分为函数,而要问如何将它 划分为对象。牢记:用对象而不是函数 来思考问题。 类(Class):类是许多相似对象的共同性 描述,它如同一个计划或蓝图,指出这 个类的对象包含了哪些数据和函数。但 定义类并不会创建任何对象。对象常常 也被称为类的实例(Instance)。16

C++经典课件

面向对象程序设计涉及的主要概念 封装 继承 多态

C++经典课件

2.1 封装 (encapsulation) 封装(encapsulation):将数据和它 的函数装进一个实体,这就是面向 对象方法一个重要特征。 对象通过操作接口(函数)与外部 发生联系,而内部的具体细节则被 隐藏起来,对外是不可见的。

C++经典课件

对象的函数在C++中叫做成员函数 (member function), 它提供了访问 该对象内数据的唯一途径。也就是 说,如果想读取一个对象内的数据 项(data member), 就必须调用该对 象的成员函数。这样可以避免数据 被意外改变。

C++经典课件

面向对象范例典型的C++程序由许多对象组成,它们通过调 用相互的成员函数来进行通信。对象1 数据

成员函数对象2 数据 成员函数 成员函数 成员函数 对象3 数据 成员函数 成员函数20

C++经典课件

对象的类比 (公司示例)销售部门 销售数据 销售经理 人力资源部 秘书 财务部 财务数据 首席财务官 财务助理21

人力资源数据人力资源经理 人力资源部职员

本文来源:https://www.bwwdw.com/article/k3w1.html

Top