C++面向对象程序设计 ●● 计算机与信息学院 罗宪
本课程的性质及学习目标 >本课程是“计算机科学与技术”专业一门非常重要的 专业技术基础课。是在《高级语言程序设计》的基础 上学习面向对象分析与面向对象程序设计方法的 课程,其后续课程主要有:《数据结构》、《数据库 程序设计》、《可视化编程技术》等 学习目标 ★掌握面向对象程序设计的基本概念及基本思想; ★掌握类、对象的概念及C++语言实现方法; ★掌握继承的概念及C++语言实现方法; ★掌握多态的概念及C++语言实现方法; ★掌握C++语言模板、流类库的应用; 初步建立计算机专业必备的面向对象程序设计 思想
几点要求 认真听课 ★不缺勤、遵守课堂纪律 ★充分调动自己的学习的主动性、能动性 ★认真作好课堂笔记 认真预习、复习 ★养成阅读教材、参考书籍的习惯,做到课前的预 习,特别是课后的复习 认真完成作业 认真完成上机实验 成绩确定: ★考试成绩70%,实验成绩20%,平时成绩10%; ★平时成绩根据考勤情况、作业完成情况等确定 ★实验成绩根据考勤及实验内容完成的情况确定
推荐教材及参考书 冫《面向对象程序设计》—刘正林编(华中科大出 版社)—简称教材①; 《C++面向对象程序设计教程》—陈维兴林小茶 编(清华大学出版社)——简称教材②。 《C++面向对象程序设计》——王萍冯建华编(清华 大学出版社)—简称教材③
第一章面向对象程序设计概述 本章主要内容 面向对象程序设计的概念 面向对象程序设计的特点 教材相应的章节: >教材①第1章(P1-P9) 教②第1章(P1-P16) 教材③第9章(P207-P225)
第一节面向对象程序设计的概念 、程序设计方法的演进 1、程序设计语言:机器语言→汇编语言→高级语言 面向过程序的高级语言→面向对象的编程语言→面 向对象的可视化编程语言) ●2、程序设计方法:程序设计的自然描述→结构化程序 设计(面向过程的程序设计方法)→面向对象的程序 设计方法→面向对象的可视化编程方法 3、结枸化(面向过程)程序设计方法与面向对象程序 设计方法的关系。 >观点1:面向过程的程序设计方法可以作为面向对象 程序设计方法的基础,学习面向对象的程序设计应具 备面向过程的程序设计方法方面的知识
第一节面向对象程序设计的概念 >观点2:面向对象的程序设计方法与面向过程的程序 设计方法在思维方法上与面向过程程序设计方法相背 离,是独立的程序设计体系 、面向对象程序设计的基本概念 →()面向过程程序设计的特点 面向过程程序设计思想的核心:功能分解 面向过程程序设计思想的主要特点:程序与数据相分 离。即 程序=算法+数据结构 面向过程程序设计思想的主要缺点:程序代码的可重 用性差,维护代价高
第一节面向对象程序设计的概念 (面向对象程序设计的基本概念 面向对象程序设计将数据及数据的操作(算法) 当成一个整体。即 程序=(算法+数据结构) 其主要思想: >面向对象程序设计,是把一些具有相同数据特性的实 例抽象成为一个类,通过对类的定义和类的使用(即 对象的使用)实现对实例的使用的—面向对象程序 设计是一种新的程序设计范型。 >特点: ★程序由类的定义及类的使用两部分组成,通常在 主程序定义各对象并规定对象间传递消息的规律;
第一节面向对象程序设计的概念 ★程序中的一切操作都是通过发送消息实现的,对 象接收消息后,启动相应的消息完成相应的操 作——对象内、对象间采用消息传递机制; 面向对象的程序设计最主要的优点:软件的可重用性 →>面向对象的程序设计最重要的的概念:类与对象 三、对象与类的概念 ()对象的概念 对象是我们认识世界的一些基本单元(人或物等) 例【1.1】观察学生对象。如下表:
第一节面向对象程序设计的概念 对象属 方法对象 方法 名 性 (操作)名 属性 (操作) 性别:男吃饭 性别:女 吃饭 年龄21上课 年龄:20上课 张三学历:本科实验李四学历本科实验 专业: 锻练 专业: 锻练 计算机 计算机 表中各对象都是现实世界中一个客观实体,其特性是: 每一个对象均有一个名字; 用属性(或称状态)描述对象的某些特征; 通过一组操作来描述对象的各种行为