第 2 章 程序设计基础. 知识类型:理论 学时: 2 学时 分值:约 4 分 2.1 程序设计方法与风格 方法: 面向过程的结构化程序设计方法 面向对象的程序设计方法 风格: 清晰第一、效率第二 源程序文档化 数据说明的方法 语句的结构 输入和输出方法.

Slides:



Advertisements
Similar presentations
纺纱学. 2 绪 论 基本要求:了解纺纱系统的类别 重点掌握:棉纺系统的工艺流程 3 一、纺纱原理与设备 纺纱:用物理或机械的方法将纺织纤维纺成纱 线的过程。 纺纱原理:初加工、原料的选配、开松除杂、 混和、梳理、精梳、并合、牵伸、加捻、卷绕等。 纺纱方法:传统纺纱方法、新型纺纱方法。 纺纱设备:开清棉联合机、梳棉机、精梳机、
Advertisements

第十二章 常微分方程 返回. 一、主要内容 基本概念 一阶方程 类 型 1. 直接积分法 2. 可分离变量 3. 齐次方程 4. 可化为齐次 方程 5. 全微分方程 6. 线性方程 类 型 1. 直接积分法 2. 可分离变量 3. 齐次方程 4. 可化为齐次 方程 5. 全微分方程 6. 线性方程.
概率统计( ZYH ) 节目录 3.1 二维随机变量的概率分布 3.2 边缘分布 3.4 随机变量的独立性 第三章 随机向量及其分布 3.3 条件分布.
第四章 犯罪概念与犯罪构成. 第一节 犯罪概念 一、犯罪概念的类型  (一)犯罪的形式概念  (二)犯罪的实质概念  (三)犯罪的混合概念.
PHPCMS 使用指南及二次开发向导 --- 系统设置篇 PHPCMS 网络培训课程 --- 系统设置篇 PHPCMS 项目部 王官庆制作 系统相关设置 1. 站点管理 2. 发布点管理 3. 系统其它设置 管理员设置 1. 角色定义 2. 管理员管理.
石化的 IT 大挑战 洛阳石化工程公司. 石化公司简介 中国石化集团洛阳石油化工工程公司,是国内能源化 工领域集技术专利商与工程承包商于一体的高科技企 业。拥有中国综合设计甲级资质,为国家首批业务涵 盖 21 个行业的工程咨询企业之一,拥有工程总承包、 工程设计、工程监理、工程咨询和环境影响评价等甲.
HistCite 结果分析示例 罗昭锋. By:SC 可能原因:文献年度过窄,少有相互引用.
一、拟合优度检验 二、变量的显著性检验 三、参数的置信区间
计算机 在分析化学的应用 ( 简介 ) 陈辉宏. 一. 概述 信息时代的来临, 各门学科的研究方法都 有了新的发展. 计算机的介入, 为分析化学的进展提供了 一种更方便的研究方法.
编译程序 构造原理和实现技术 授课教师:吕江花. 第一章 编译程序概述 主要内容: 几个基本概念 编译器的工作过程概述 编译器各个阶段的功能描述 编译程序的实现途径.
嵌入式操作系统 陈香兰 Fall 系统调用 10/27/09 嵌入式 OS 3/12 系统调用的意义  操作系统为用户态进程与硬件设备进行交互提供 了一组接口 —— 系统调用  把用户从底层的硬件编程中解放出来  极大的提高了系统的安全性  使用户程序具有可移植性.
地理信息系统概述. 数据和信息 (Data & Information) 数据 原始事实 如:员工姓名, 数据可以有数值、图形、声音、视觉数据等 信息 以一定规则组织在一起的事实的集合。
第 4 章 抽象解释 内容概述 以一种独立于编程语言的方式,介绍抽象解释的 一些本质概念 – 将 “ 程序分析对语言语义是正确的 ” 这个概念公式 化 – 用 “ 加宽和收缩技术 ” 来获得最小不动点的较好的 近似,并使所需计算步数得到限制 – 用 “ 伽罗瓦连接和伽罗瓦插入 ” 来把代价较大的属 性空间用代价较小的属性空间来代替.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第六十二讲 ) 离散数学. 最后,我们构造能识别 A 的 Kleene 闭包 A* 的自动机 M A* =(S A* , I , f A* , s A* , F A* ) , 令 S A* 包括所有的 S A 的状态以及一个 附加的状态 s.
1 为了更好的揭示随机现象的规律性并 利用数学工具描述其规律, 有必要引入随 机变量来描述随机试验的不同结果 例 电话总机某段时间内接到的电话次数, 可用一个变量 X 来描述 例 检测一件产品可能出现的两个结果, 也可以用一个变量来描述 第五章 随机变量及其分布函数.
主讲教师:陈殿友 总课时: 124 第八讲 函数的极限. 第一章 机动 目录 上页 下页 返回 结束 § 3 函数的极限 在上一节我们学习数列的极限,数列 {x n } 可看作自变量 为 n 的函数: x n =f(n),n ∈ N +, 所以,数列 {x n } 的极限为 a, 就是 当自变量 n.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第三十八讲 ) 离散数学. 第八章 格与布尔代数 §8.1 引 言 在第一章中我们介绍了关于集 合的理论。如果将 ρ ( S )看做 是集合 S 的所有子集组成的集合, 于是, ρ ( S )中两个集合的并 集 A ∪ B ,两个集合的交集.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第四十八讲 ) 离散数学. 例 设 S 是一个非空集合, ρ ( s )是 S 的幂集合。 不难证明 :(ρ(S),∩, ∪,ˉ, ,S) 是一个布尔代数。 其中: A∩B 表示 A , B 的交集; A ∪ B 表示 A ,
第二部分 行政法律关系主体 第一节 行政主体 一、行政主体 (一)行政主体的概念 cc (二)行政主体资格含义及构成要件 CASE1CASE1\CASE2CASE2 (三)行政主体的职权和职责 1 、行政职权的概念及内容 2 、行政职权的特点 3 、行政职责.
协同工作环境研究中心 协同共享 助力科研. 主要内容  认识协同及协同软件  协同科研软件 duckling 介绍.
线性代数习题课 吉林大学 术洪亮 第一讲 行 列 式 前面我们已经学习了关 于行列式的概念和一些基本 理论,其主要内容可概括为:
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第二十五讲 ) 离散数学. 定理 群定义中的条件 ( 1 )和( 2 )可以减弱如下: ( 1 ) ’ G 中有一个元素左壹适合 1 · a=a; ( 2 ) ’ 对于任意 a ,有一个元素左逆 a -1 适 合 a -1 ·
第 4 章 过程与变量的作用范围. 4.1 Visual Basic 的代码模块 Visual Basic 的应用程序是由过程组成的, 过程代码存放在模块中。 Visual Basic 提供了 三类模块,它们是窗体模块、标准模块和类 模块。 窗体模块 窗体模块是大多数 Visual Basic.
数 学 系 University of Science and Technology of China DEPARTMENT OF MATHEMATICS 第 3 章 曲线拟合的最小二乘法 给出一组离散点,确定一个函数逼近原函数,插值是这样的一种手段。 在实际中,数据不可避免的会有误差,插值函数会将这些误差也包括在内。
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第三十九讲 ) 离散数学. 例 设 S 是一个集合, ρ ( S )是 S 的幂集合,集合 的交( ∩ ),并(∪)是 ρ ( S )上的两个代数运算, 于是,( ρ ( S ), ∩ ,∪) 是一个格。而由例 知.
实验三: 用双线性变换法设计 IIR 数字滤波器 一、实验目的 1 熟悉用双线性变换法设计 IIR 数字滤波器的原理与方法。 2 掌握数字滤波器的计算机仿真方法。 3 通过观察对实际心电图信号的滤波作用, 获得数字滤波的感性知 识。
OS 进程调度模拟演示 制作人: 钱晶 高上上. OS 进程调度模拟-实验原理 静态优先级原理 在这种方式下,系统一旦把处理机分配给就绪队 列中的优先权最高的进程后,该进程便一直执行下去, 直至完成。或因为发生某事件使该进程放弃处理机,系 统方可再将处理机分配给另一优先级最高的进程。这些 事件包括有优先级更高的进程进入,或是因为某些原因.
1 第 7 章 专家控制系统 概述 专家系统的起源与发展 专家系统的一般结构 专家系统的知识表示和获取 专家系统的特点及分类.
信息利用与学术论文写作 Library of Jiangsu University, Zhenjiang Sha Zhenjiang
第二章 贝叶斯决策理论 3学时.
操作系统原理课程设计指南 姜海燕 设计考核幻灯制作  1.1 封皮:系统名称,研制人员  1.2 目的及意义  1.3 功能设计:功能框图、用例图  1.4 结构设计:系统结构  1.5 核心技术及技术路线:画图  1.6 进度安排  1.7 人员安排  1.8.
UML 对象设计与编程 主 讲 : 董兰芳 副教授 Dept. of Computer Science,USTC
量子化学 第四章 角动量与自旋 (Angular momentum and spin) 4.1 动量算符 4.2 角动量阶梯算符方法
数 学 系 University of Science and Technology of China DEPARTMENT OF MATHEMATICS 第 5 章 解线性方程组的直接法 实际中,存在大量的解线性方程组的问题。很多数值方 法到最后也会涉及到线性方程组的求解问题:如样条插值的 M 和.
主讲教师:陈殿友 总课时: 124 第十一讲 极限的运算法则. 第一章 二、 极限的四则运算法则 三、 复合函数的极限运算法则 一 、无穷小运算法则 机动 目录 上页 下页 返回 结束 §5 极限运算法则.
在发明中学习 线性代数 概念的引入 李尚志 中国科学技术大学. 随风潜入夜 : 知识的引入 之一、线性方程组的解法 加减消去法  方程的线性组合  原方程组的解是新方程的解 是否有 “ 增根 ” ?  互为线性组合 : 等价变形  初等变换  高斯消去法.
第一节 相图基本知识 1 三元相图的主要特点 (1)是立体图形,主要由曲面构成; (2)可发生四相平衡转变; (3)一、二、三相区为一空间。
量子力学教程 ( 第二版 ) 3.4 连 续 谱 本 征 函 数 的 归 一 化 连续谱本征函数是不能归一化的 一维粒子的动量本征值为的本征函数 ( 平面波 ) 为 可以取 中连续变化的一切实数值. 不难看出,只要则 在量子力学中, 坐标和动量的取值是连续变化 的 ; 角动量的取值是离散的.
第 3 章 控制流分析 内容概述 – 定义一个函数式编程语言,变量可以指称函数 – 以 dynamic dispatch problem 为例(作为参数的 函数被调用时,究竟执行的是哪个函数) – 规范该控制流分析问题,定义什么是可接受的控 制流分析 – 定义可接受分析在语义模型上的可靠性 – 讨论分析算法.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第五十三讲 ) 离散数学. 定义 设 G= ( V , T , S , P ) 是一个语法结构,由 G 产生的语言 (或者说 G 的语言)是由初始状态 S 演绎出来的所有终止符的集合, 记为 L ( G ) ={w  T *
Relevance Theory Lecture 12. Relevance Theory 交际研究的对象是交际的概念、内容、 性质、功能、方法和交际行为、交际参 加者之间的关系等的认识和阐述。 20 世 纪 70 年代末以来, Sperber & Wilson 把认 知与交际结合起来,于 1986.
编译原理总结. 基本概念  编译器 、解释器  编译过程 、各过程的功能  编译器在程序执行过程中的作用  编译器的实现途径.
主要学习内容: 1、用描述法分析样品的风味特征 2 、学习味觉试验方法。 闽北职业技术学院食品与生物工程系.
 符号表  标识符的作用: 声明部分:定义了各种对象及对应的属性和 使用规则。 程序体:对所定义的对象进行各种操作。 $ididname IdnameAttributeIR  必要性 Token : 新表-符号表(种类、类型等信息):
习题课( 1 ) 进程管理及调度. 复习 进程概念、描述及状态 进程概念、描述及状态 进程的同步与互斥及应用 进程的同步与互斥及应用 管程机制 管程机制 进程通信 进程通信 进程调度算法 进程调度算法 进程死锁 进程死锁 线程 线程.
Department of Mathematics 第二章 解析函数 第一节 解析函数的概念 与 C-R 条件 第二节 初等解析函数 第三节 初等多值函数.
首 页 首 页 上一页 下一页 本讲内容本讲内容 视图,剖视图(Ⅰ) 复习: P107 ~ P115 作业: P48(6-2,6-4), P49( 去 6-6) P50, P51(6-13), P52 P50, P51(6-13), P52 P53 (6-18,6-20) P53 (6-18,6-20)
1-4 节习题课 山东省淄博第一中学 物理组 阚方海. 2 、位移公式: 1 、速度公式: v = v 0 +at 匀变速直线运动规律: 4 、平均速度: 匀变速直线运动 矢量式 要规定正方向 统一单位 五个量知道了三 个量,就能求出 其余两个量 3 、位移与速度关系:
《 UML 分析与设计》 交互概述图 授课人:唐一韬. 知 识 图 谱知 识 图 谱知 识 图 谱知 识 图 谱.
1 、如果 x + 5 > 4 ,那么两边都 可得 x >- 1 2 、在- 3y >- 4 的两边都乘以 7 可得 3 、在不等式 — x≤5 的两边都乘以- 1 可得 4 、将- 7x — 6 < 8 移项可得 。 5 、将 5 + a >- 2 a 移项可得 。 6 、将- 8x < 0.
名探柯南在侦查一个特大盗窃集团过程 中,获得藏有宝物的密码箱,密码究竟 是什么呢?请看信息: ABCDEF( 每个字 母表示一个数字 ) A :是所有自然数的因数 B :既有因数 5 ,又是 5 的倍数 C :既是偶数又是质数 D :既是奇数又是合数 EF :是 2 、 3 、 5 的最小公倍数.
项目七: PLC 功能指令应用 带进位循环左移指令 XXXXX. 项目七: PLC 功能指令应用 FX2 系列可编程控制器移位控制指令有移位、循环移位、字移位 及先进先出 FIFO 指令等 10 条指令。 带进位循环右移指令 RCR 带进位循环左移指令 RCL 字右移位指令 WSFR 先入先出读出指令.
Java 水晶报表. 目录 水晶报表开发 (CrystalReports 2008) Java 水晶报表 (JBuilder 2005) 报表项目布署 (WebSphere v6.1)
2015 年江苏省美术专业统考考试说明 解读 : 贡加兵 扬州市邗江区公道中学
表单自定义 “ 表单自定义 ” 功能是用于制作表单的 工具,用数飞 OA 提供的表单自定义 功能能够快速制作出内容丰富、格 式规范、美观的表单。
7 生产费用在完工产品与在产 品之间分配的核算. 2 第七章 生产费用在完工产品与在产品之 间的分配  知识点 :  理解在产品的概念  掌握生产费用在完工产品与在产品之间的分 配.
力的合成 力的合成 一、力的合成 二、力的平行四边形 上一页下一页 目 录 退 出. 一、力的合成 O. O. 1. 合力与分力 我们常常用 一个力来代替几个力。如果这个 力单独作用在物体上的效果与原 来几个力共同作用在物体上的效 果完全一样,那么,这一个力就 叫做那几个力的合力,而那几个 力就是这个力的分力。
个体 精子 卵细胞 父亲 受精卵 母亲 人类生活史 问题:人类产生配子(精、卵 细胞)是不是有丝分裂?
算得清写的准 —— 物业费公示报告的编写 讲师:朱芸 物业费的 构成? 哪些是管 理人员工 资呢? 哪些算工程费 用? 怎样才能核 算的清楚呢?
逻辑设计基础 1 第 7 章 多级与(或)非门电路 逻辑设计基础 多级门电路.
“ 百链 ” 云图书馆. 什么是百链云图书馆?1 百链云图书馆的实际效果?2 百链云图书馆的实现原理?3 百链云图书馆的价值?44 图书馆要做什么?55 提 纲.
无忧 PPT 整理发布 无忧 PPT 整理发布 网上教研活动的推进与 学习社区的构建 首都师范大学 蒋国珍 2008 年 12 月.
目标与要求: 让学生了解材料美是布的基本特点,利 用布的特点进行创作,培养学生的创新和实 践能力。
八. 真核生物的转录 ㈠ 特点 ① 转录单元为单顺反子( single cistron ),每 个蛋白质基因都有自身的启动子,从而造成在功能 上相关而又独立的基因之间具有更复杂的调控系统。 ② RNA 聚合酶的高度分工,由 3 种不同的酶催化转 录不同的 RNA 。 ③ 需要基本转录因子与转录调控因子的参与,这.
1 第三章 数列 数列的概念 考点 搜索 ●数列的概念 ●数列通项公式的求解方法 ●用函数的观点理解数列 高考 猜想 以递推数列、新情境下的 数列为载体, 重点考查数列的通 项及性质, 是近年来高考的热点, 也是考题难点之所在.
第二节. 广告牌为什么会被风吹倒? 结构的稳定性: 指结构在负载的作用下 维持其原有平衡状态的能力。 它是结构的重要性质之一。
第二节 财政的基本特征 第二节 财政的基本特征 一、财政分配以政府为主体 二、财政分配一般具有强制性 三、财政分配一般具有无偿性 第一章 财政概论 四、财政分配一般具有非营利性.
韩文数据库使用说明 鲁锦松. 主要内容 一、为什么要用数据库 二、怎样利用中文数据库 三、怎样利用韩文数据库.
目录 上页 下页 返回 结束 二、无界函数反常积分的审敛法 * 第五节 反常积分 无穷限的反常积分 无界函数的反常积分 一、无穷限反常积分的审敛法 反常积分的审敛法  函数 第五章 第五章.
§7.2 估计量的评价标准 上一节我们看到,对于总体 X 的同一个 未知参数,由于采用的估计方法不同,可 能会产生多个不同的估计量.这就提出一 个问题,当总体的一个参数存在不同的估 计量时,究竟采用哪一个好呢?或者说怎 样评价一个估计量的统计性能呢?下面给 出几个常用的评价准则. 一.无偏性.
Presentation transcript:

第 2 章 程序设计基础

知识类型:理论 学时: 2 学时 分值:约 4 分

2.1 程序设计方法与风格 方法: 面向过程的结构化程序设计方法 面向对象的程序设计方法 风格: 清晰第一、效率第二 源程序文档化 数据说明的方法 语句的结构 输入和输出方法

2.2 结构化程序设计 程序的目的:用于数学计算 主要工作:设计求解问题的过程

2.2 结构化程序设计 设计原则 自顶向下、逐步求精。采用模块分解与功能抽象。 分而治之。 程序结构: 按功能划分为若干个基本模块,形成一个树状结构。 各模块间的关系尽可能简单,功能上相对独立;每一模 块内部均是由顺序、选择和循环三种基本结构组成。 其模块化实现的具体方法是使用子程序(函数)。

优点: 有效地将一个较复杂的程序系统设计任务分解成 许多易于控制和处理的子任务,便于开发和维护。 2.2 结构化程序设计

缺点: 可重用性差、数据安全性差、难以开发大 型软件和图形界面的应用软件 把数据和处理数据的过程分离为相互独立的实体。 当数据结构改变时,所有相关的处理过程都要进行相 应的修改。 每一种相对于老问题的新方法都要带来额外的开销。 图形用户界面的应用程序,很难用过程来描述和实现, 开发和维护也都很困难。 2.2 结构化程序设计

 与人类习惯的思维方法一致  稳定性好  可重用性好  易于开发大型软件产品  可维护性好 2.3 面向对象的程序设计 面向对象方法的特点

将数据及对数据的操作方法封装在一起,作为一 个相互依存、不可分离的整体 —— 对象。 对同类型对象抽象出其共性,形成类。 类通过一个简单的外部接口,与外界发生关系。 对象与对象之间通过消息进行通讯。 2.3 面向对象的程序设计 面向对象方法的特点

1. 对象( object) 2.3 面向对象的程序设计 面向对象方法的基本概念 是系统中用来描述客观事物的一个实体,它是 用来构成系统的一个基本单位。对象由一组属 性和一组行为构成。 属性:用来描述对象静态特征的数据项。 行为:用来描述对象动态特征的操作序列。

<例><例> 有一个人名字叫胡哥,性别男,身高 1.80m ,体重 68kg ,可以修电器,可以教计算机课,描述该对象 如下: – 对象的静态特征: 性别:男 身高: 1.80m 体重: 68kg – 对象的动态特征: 回答身高 回答体重 回答性别 修理电器 教计算机课

1. 对象( object) 2.3 面向对象的程序设计 面向对象方法的基本概念 对象的基本特点 标识唯一性 分类性 多态性 封装性

1. 对象( object) 2.3 面向对象的程序设计 面向对象方法的基本概念 对象的定义 全局对象、局部对象、静态对象、堆对象 class Desk { public: int weight; int height; int width; int lenth; };}; Desk a; ········ main() { Desk b; ········· } 全局 对象 局部 对象

2. 类 (Class) 和实例 (Instance) 2.3 面向对象的程序设计 面向对象方法的基本概念 (1) 从结构到类 (2) 什么是类 具有相同属性和行为的一组对象的集合 一个属于某类的对象称为该类的一个实例。

钟表类的定义 属性: int Hour, int Minute, int Second 行为: SetTime(), ShowTime() class Clock { public: void SetTime(int NewH, int NewM, int NewS); void ShowTime(); private: int Hour,Minute,Second; };};

class Clock { public: void SetTime(int NewH, int NewM, int NewS); void ShowTime(); private: int Hour, Minute, Second; }; 成员数据 成员函数

void Clock :: SetTime(int NewH, int NewM, int NewS) { Hour=NewH; Minute=NewM; Second=NewS; } void Clock :: ShowTime() { printf(“%d:%d:%d”,Hour,Minute,Second); } 19

#include class Clock {......// 类的声明略 } // 类的实现略 int main() { Clock myClock; myClock.SetTime(8,30,30); myClock.ShowTime(); }

3. 消息 (message) 2.3 面向对象的程序设计 面向对象方法的基本概念 消息是系统向对象发出的服务请求,是对象之 间的通信机制。提供服务的对象负责消息协议 的格式和消息的接收,请求服务的对象提供输 入信息,获取应答消息内容。 在面向对象中,消息常常通过函数调用来实现。

<例><例> 状态:胡哥 29 岁 男 计算机 讲师 680 实例: 行为:评职称 涨工资 抽象 属性:姓名 年龄 性别 单位 职称 工资 类:讲师 操作:评职称 涨工资 数据 结构 方法名 方法:评职称 { 步骤 条件 } 涨工资 { 公式 } 方法体 class 讲师 胡哥 ; 胡哥. 评职称(..... ) ; 胡哥. 调工资(..... ) ; 消息

4. 继承 (inheritance) 2.3 面向对象的程序设计 面向对象方法的基本概念 继承对于软件复用有着重要意义,是面向对象技 术能够提高软件开发效率的重要原因之一。 定义:特殊类的对象拥有其一般类的全部属性与 服务,称作特殊类对一般类的继承。 例如:将轮船作为一个一般类,客轮便是一个特殊类。

保持已有类的特性而构造新类的过程称为继 承。 在已有类的基础上新增自己的特性而产生新 类的过程称为派生。 被继承的已有类称为基类(或父类)。 派生出的新类称为派生类。 4. 继承 (inheritance) 2.3 面向对象的程序设计 面向对象方法的基本概念

继承的目的:实现代码重用 派生的目的:当新的问题出现,原有程序无法 解决(或不能完全解决)时,需要对原有程序 进行改造。 4. 继承 (inheritance) 2.3 面向对象的程序设计 面向对象方法的基本概念

继承与派生问题举例

多继承、单继承

5. 多态性 (polymorphism) 2.3 面向对象的程序设计 面向对象方法的基本概念 多态是指在一般类中定义的属性或行为,被特 殊类继承之后,可以具有不同的数据类型或表 现出不同的行为。这使得同一个属性或行为在 一般类及其各个特殊类中具有不同的语义。 例如:

多态:同一名称,不同的功能实现方式。 目的:达到行为标识统一,减少程序中标 识符的个数。 实现:重载函数和虚函数 5. 多态性 (polymorphism) 2.3 面向对象的程序设计 面向对象方法的基本概念

总结 基本单元 面向对象程序设计(英语: Object Oriented Programming ,缩写: OOP ),指一种程序 设计范型,同时也是一种程序开发的方法论。 它将对象作为程序的基本单元,将程序和数据 封装其中,以提高软件的重用性、灵活性和扩 展性。

类 类( Class )定义了一件事物的抽象特点。通 常来说,类定义了事物的属性和它可以做到的 (它的行为)。 类可以为程序提供模版和结构。 一个类的方法和属性被称为 “ 成员 ” 。 类狗 { 私有成员 : 体重 毛皮颜色 公有成员 : 吠叫 () }

对象 对象( Object )是类的实例。 类狗 莱丝; 莱丝. 毛皮颜色 = 棕白色 莱丝. 吠叫 () ; 我们无法让狗这个类去吠叫,但是我们 可以让对象 " 莱丝 " 去吠叫,正如狗可以 吠叫,但没有具体的狗就无法吠叫。

方法 ( 行为 ) 方法( Method )是一个类能做的事情,但方法并没 有去做这件事。 作为一条狗,莱丝是会吠叫的,因此 “ 吠叫 ()” 就是它的一个 方法。与此同时,它可能还会有其它方法,例如 “ 坐下 ()” , 或者 “ 吃 ()” 。 对一个具体对象的方法进行调用并不影响其它 对象,正如所有的狗都会叫,但是你让一条狗叫不代表所有 的狗都叫。 类狗 莱丝,泰尔; 莱丝. 吠叫 () ; 则泰尔是不会吠叫的,因为这里的吠叫只是对对象 " 莱丝 " 进 行的。

封装性 具备封装性( Encapsulation )的面向对象程序设计隐藏了某 一方法的具体执行步骤,取而代之的是通过消息传递机制传送 消息给它。 /* 一个面向过程的程序会这样写: */ 结构体狗 莱丝 ; 设置音调 ( 莱丝, 5) ; 吸气 ( 莱丝 ) ; 吐气 ( 莱丝 ) ; /* 当狗的吠叫被封装到类中,任何人都可以简单地使用: */ 类狗 莱丝; 莱丝. 吠叫 () ; 实例 成员 封装是通过限制只有特定类的实例可以访问这一特 定类的成员,而它们通常利用接口实现消息的传入 传出。 class MeiNu // 美女类! { private: int XW; // 胸围 int YW; // 我就不说了噢 :) int TW; // 我还是不说了噢 :)) }; MeiNu jordan; //now is 乔丹 ! jordan.XW = 34; jordan.YW = 24; jordan.TW = 34;

继承性与多态性 继承性( Inheritance )是指,在某种情况下, 一个类会有 “ 子类 ” 。 多态性( Polymorphism )指方法在不同的类 中调用可以实现的不同结果。 类狗 莱丝; 类鸡 鲁斯特; 莱丝. 叫 () ; 鲁斯特. 叫 () ; 鸡啼 犬吠

练习题 1. 下面描述中,符合结构化程序设计风格的是 ______ 。 A. 使用顺序、选择和重复(循环)三种基本控制结构表示 程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用 goto 语句 2. 下面概念中,不属于面向对象方法的是 ______ 。 A. 对象 B. 继承 C. 类 D. 过程调用 3. 结构化程序设计主要强调的是 ______ 。 A. 程序的规模 B. 程序的易读性 C. 程序的执行效率 D. 程序的可移植性 4. 对建立良好的程序设计风格,下面描述正确的是 ______ 。 A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法 C. 充分考虑程序的执行效率 D. 程序的注释可有可无

5. 下面对对象概念描述错误的是 ______ 。 A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体 C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性 6. 算法一般都可以用哪几种控制结构组合而成 ______ 。 A. 循环、分支、递归 B. 顺序、循环、嵌套 C. 循环、递归、选择 D. 顺序、选择、循环 7. 在面向对象方法中,一个对象请求另一对象为其服务的方 式是通过发送 ______ 。 A. 调用语句 B. 命令 C. 口令 D. 消息

8. 在设计程序时,应采纳的原则之一是 ______ 。 A. 程序结构应有助于读者理解 B. 不限制 goto 语句的使用 C. 减少或取消注解行 D. 程序越短越好 9. 面向对象的设计方法与传统的的面向过程的方法有本质不同, 它的基本原理是 ______ 。 A. 模拟现实世界中不同事物之间的联系 B. 强调模拟现实世界中的算法而不强调概念 C. 使用现实世界的概念抽象地思考问题从而自然地解决问题 D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念 去思考 10 .采用面向对象技术开发的应用系统的特点是 ______ 。 A . 重用性更强 B . 运行速度更快 C . 占用存储量小 D . 维护更复杂

1 .结构化程序设计的三种基本逻辑结构为顺序、选择和( ) 2 .在面向对象方法中,信息隐蔽是通过对象的( )性来实现 的. 3 .类是一个支持集成的抽象数据类型,而对象是类的( ) 4 .在面向对象方法中,类之间共享属性和操作的机制称为 ( ) 。 5. 面向对象的程序设计方法中涉及的对象是系统中用来描述客 观事物的一个( )。 6. 一个类可以从直接或间接的祖先中继承所有属性和方法。采 用这个方法提高了软件的( ) 7. 面向对象的模型中,最基本的概念是对象和 ( )。 8. 结构化程序设计是一种面向 ( ) 的设计方法.

9. 对象的基本特点包括标识唯一性、分类性、 多态性、( ) 和模块独立性 10. 在面向对象分析和设计中, 通常把对象所进行的操作称为 ( ) 11. 使用已经存在的类定义作为基础建立新的类定义, 这样的技术 称为 ( ) 12. 继承使得相似的对象可以共享代码和数据结构, 从而大大减 少了程序中的冗余信息, 提高软件的 ( ) 13. 对象和类的关系可以表示为 ( )和( )的关系 14. 结构化程序设计的原则中, “ 先考虑总体,后考虑细节;先考 虑全局目标,后考虑局部目标 ” 称为 ( ) 。 15. 在消息传递中,对象根据所接受的消息而做出动作,同样的 消息被不同的对象接受时可导致完全不同的行动,该现象称 为 ( ) 。

1. (06.4 月 ) 下列选项中不属于结构化程序设计方法的是 A) 自顶向下 B) 逐步求精 C) 模块化 D) 可复用 2. (06.4 月 ) 在面向对象方法中,【 】描述的是具有相似属性 与操作的一组对象。 3. (05.4 月 ) 在面向对象方法中,类的实例称为 【 】. 4. (09.3 月 ) 符合结构化原则的三种基本控制结构是:选择结构、 循环结构和【 】。 5. (08.4 月 ) 结构化程序设计的基本原则不包括: A. 多态性 B. 自顶向下 C. 模块化 D. 逐步求精 有关等级考试题