面向对象课件(第一章).ppt

上传人:M****1 文档编号:567891993 上传时间:2024-07-22 格式:PPT 页数:60 大小:248.50KB
返回 下载 相关 举报
面向对象课件(第一章).ppt_第1页
第1页 / 共60页
面向对象课件(第一章).ppt_第2页
第2页 / 共60页
面向对象课件(第一章).ppt_第3页
第3页 / 共60页
面向对象课件(第一章).ppt_第4页
第4页 / 共60页
面向对象课件(第一章).ppt_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《面向对象课件(第一章).ppt》由会员分享,可在线阅读,更多相关《面向对象课件(第一章).ppt(60页珍藏版)》请在金锄头文库上搜索。

1、 面向对象面向对象 程序设计基础程序设计基础 主讲人:高天真主讲人:高天真教材与参考书w面向对象程序设计基础,李师贤等,高等教育出版社,2003年4月版w C+语言基础教程,吕凤翥著,清华大学出版社,2002年3月版w C+ PROGRAM DESIGN An Introduction to programming and Object-Oriented Design,英文版,COHOON&DAVIDSON,3rd Edition清华大学出版社,2002年1月版第一章第一章 程序设计与程序设计与C+语言初步语言初步1.1 1.1 C+介绍1.2 1.2 C+语言结构1.3 1.3 C+程序的书

2、写风格1.4 1.4 C+程序的实现1.1 1.1 C C+介绍介绍wOOP LanguagewC与C+wC+的特点OOP Languagew程序设计方法的发展: 结构化 面向对象wOOPL可分为两类: 1、 Pure OOP 典型代表:Smalltalk,Eiffel,Java等 2、对传统语言进行面向对象的扩展 典型代表:C+C与C+的关系1、二者本质区别:、二者本质区别: C: 面向过程,支持结构化程序设计 C+:面向对象,支持面向对象程序设计2、二者关系:、二者关系: C+:包含了C的全部内容,是对C的扩展 C: 是C+的一个子集注:注:w OOP!=C+C+的特点w既支持结构化的程序

3、设计,也支持面向对象的程序设计,这是C+语言成功的重要原因w是一种有生产力的OOP语言1.2 1.2 C+语言结构语言结构w 一个简单程序 hello.cppw C+语言符号w C+语法符号w C+程序构成成分w C+程序构成部件一个简单程序:/* file:hello.cpp A Simple Program:Output “Hello” */#includeint main( )cout“Hello”; /输出“Hello”return 0;C+语言符号w 26个英文字母 a,b,c,.,z,A,B,C,Zw 10个数字 0,1,2,3,4,5,6,7,8,9w 其他符号 !,#,%,&,

4、*,( ),+,-,/, , .C+语法符号语法符号1. 数 整数:0,123,-32 小数:3.14,0.718282. 字符 A, a, 4, *, ,.3. 字符串 “Hello,world” “Sorry,you entered wrong number!”4. 配对使用的符号如: 、 、( )、5. 表示注释的符号如:/*、*/、/6. 运算符如:+、-、*、/、&、|、!、=等7. 标识符预定义:main、include、cout、cin自定义:number、i1、_get_char6. 运算符运算符w算术运算符:+、-、*、/、%w逻辑运算符:&、|、!w比较运算符:=、!=、=

5、w赋值运算符: =w自增自减运算符: +、-w条件运算符: ?:w其他运算符: *、&、: 等7. 标识符标识符w 标识符的作用w 标识符的构成规范w 标识符分类w 注意标识符的作用标识符的作用w标识符:标识符:用来表示常量、变量、数组、指针、函数、类及对象等。标识符构成规范标识符构成规范w标识符由字母、数字和下划线_组成w标识符必须以字母或下划线开头w标识符区分大小写标识符分类标识符分类w预定义标识符:(保留字)main void int float char returnclass if else do whilew自定义标识符:PI, ARRAY_NUMBER, NAMEal, numb

6、er, get_char, sub1_totalPeople, Student, Date使用标识符需注意:使用标识符需注意:w自定义标识符不能用系统的保留字w尽量使用有意义的单词作标识符常用的标识符形式有以下几种:1、单词之间用下划线连接,如:my_car2、骆驼表示法,如:MyCar, SizeOfString3、匈牙利标记法,如:iMyCar, ipMyCarC+程序构成程序构成程序程序 = 注释注释 + 数据数据 + 操作操作例:用户输入圆的半径Redius,程序输出圆的周长注释:程序的说明部分数据:整数、小数、字符、字符串等操作:定义、输入、运算、输出 /*用户输入圆的半径Rediu

7、s,输出圆的周长*/#include const float PI=3.14159;int main( )int redius;float perimeter; /数据定义数据定义cout redius; /数据输入数据输入perimeter = 2 * PI * redius; /数据运算数据运算cout “Perimeter of the circle:” radius;/读入一个小数cin grade;/读入一个整数cin ex;/读入一个字符数据操作数据操作-数据运算数据运算w 利用运算符对数据进行运算如:12+34+78.69;2*PI*radius;grade_sum/STUD_N

8、UM;数据操作数据操作-数据赋值数据赋值w 将表达式运算的结果赋给变量如: sum=12+34+78.69 circum=2*PI*radius average=grade_sum/STUD_NUM数据操作数据操作-数据输出数据输出w将数据或运算结果输出到屏幕、文件或数据库如:将数据输出到屏幕上cout radius*33.6;cout grade;cout a;w 赋值语句:a = b + c;w 运算语句:a+;w 输出语句:cout a;w 函数调用语句:swap(a,b);w 返回语句:return a+b;w 空语句:;语句语句-流程控制语句流程控制语句w 语句的执行一般是顺序执行的

9、w 可以通过流程控制语句改变程序的执行流程 分支语句 (if , switch)循环语句 (dowhile , while , for)跳转语句 (break, continue, goto)语句语句-流程控制示意图流程控制示意图C+程序构成部件程序构成部件-函数函数w语句与函数的关系w函数构成w函数分类w函数调用语句与函数的关系语句与函数的关系w函数是C+程序的主要组成成分w语句在函数中体现,语句是函数的主体函数构成函数构成返回值 函数名(参数表) /函数头函数体函数构成=函数头+函数体例:函数举例函数举例void fatal_error(char msg )cout “Error.” ms

10、g endl;cout “Please contact the Developern”;exit(-1);函数分类函数分类(一)(一)w预定义库函数预定义库函数string.h:strlen(), strcpy( ), strcom( )math.h: sin( ), cos( ), sqrt( )stdio.h: printf( ),scanf( )其它库函数其它库函数w自定义函数自定义函数get_number( )error( ) 函数分类函数分类(二)(二)w通用函数printf( )get_char( )w类的成员函数STUDENT s;couts.get_name( );函数调用函数

11、调用 mainmain函数由执行环境的操作系统调用函数由执行环境的操作系统调用 其它函数都由其它函数都由mainmain函数直接或间接调用函数直接或间接调用C+程序构成部件程序构成部件-类类w类与对象是面向对象的核心内容w引入类后,程序的主体从函数转化为类w类的特点:封装、继承、多态C+程序构成部件程序构成部件-类类w封装了数据和操作封装了数据和操作w成员具有成员具有公有公有、保护保护和和私有私有三种访问限制三种访问限制 w引入类后,程序的主体从函数转化为类引入类后,程序的主体从函数转化为类类的定义类的定义class PEOPLEpublic: PEOPLE(char *name,int ag

12、e); char *get_name( );/取姓名取姓名 int get_age( );/取年龄取年龄 void inc_age( );/长一岁长一岁private: char name20; int age;类的实例类的实例-对象对象 PEOPLE john(“John”,29); PEOPLE marry(“Marry”,18);cout“name:”john.get_name( )endl; cout“age:”john.get_age( )endl; john.inc_age( );/增长一岁john.name( );/错误!类的特点类的特点-封装与隐藏封装与隐藏w 将算法和数据结构

13、有机集成在一起将算法和数据结构有机集成在一起传统方法:数据和操作分离w 支持模块化程序设计支持模块化程序设计类成为基本的模块,作为程序设计的基础w 保护和私有成员,对外隐藏其内部实现保护和私有成员,对外隐藏其内部实现使程序的可维护性、安全性得到保证类的特点类的特点-继承与派生继承与派生class STUDENT: public PEOPLEpublic: student(char *no,int age,char *s_no,int c_no); char *get_stu_no( );/取学号 int get_class_no( );/取班号 void charge_class_no( );

14、/改班号protected: char student_no8;/学号 int class_no;/班号;继承的好处继承的好处w减少了开发新的类的工作量减少了开发新的类的工作量 -提高了软件开发的效率w软件复用软件复用 -形成了大规模软件生产的基础w提高程序的正确性提高程序的正确性 -经过严格测试的类,能保证其正确性C+程序构成部件程序构成部件-文件文件w文件是编译的基本单位w一个C+程序由多个文件构成,文件包括:头文件和源文件w只有一个文件可以定义main( )函数,它是程序的入口点(C+语言结构)小结语言结构)小结(C+语言结构)小结语言结构)小结1.31.3 C+程序的书写风格程序的书写

15、风格w尽量提高可读性 (C+语言书写格式灵活、无限制)w基本原则:1、一般一行写一条语句2、采用缩格书写方式:表示同一类内容的语句行要对齐,如:函数体、循环体等3、每个大括号占一行,并与使用大括号的语句对齐,大括号内的语句缩格书写且各语句对齐。1.41.4 C+程序的实现程序的实现w 编辑w 编译w 运行w 实现过程中可能出现的错误C+程序的实现程序的实现-编辑编辑w编辑编辑将写好的C+源程序输入并存盘,生成磁盘文件,文件扩展名为 .cppC+程序的实现程序的实现-编译编译w 编译编译 (分为三个子过程)1、预处理过程:执行源程序中的预处理命令,如:include将头文件加入到源程序中2、编译过程:进行词法和语法分析,生成目标代码文件 (.obj文件)3、连接过程:将用户程序生成的多个目标文件和系统提供的库文件中的代码连接起来,生成可执行文件(.exe文件)C+程序的实现程序的实现-运行运行w执行.exe文件编译、连接、运行中可能出现的错误编译、连接、运行中可能出现的错误w编译时的错误:词法和语法错w连接时的错误:一般是致命错w运行时的错误:算法错、逻辑错

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号