chap1 绪论new

chap1 绪论new

ID:36279261

大小:107.00 KB

页数:19页

时间:2019-05-08

chap1 绪论new_第1页
chap1 绪论new_第2页
chap1 绪论new_第3页
chap1 绪论new_第4页
chap1 绪论new_第5页
资源描述:

《chap1 绪论new》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、面向对象程序设计(C++/Java)Object-OrientedProgramminginC++/JavaLanguage教材:l马光志.C++程序设计实践教程.华中科技大学出版lJava语言导学机械工业出版社参考书:1)王燕.面向对象的理论与C++实践.清华版2)C++Thinking.机械工业出版社3)Java语言程序设计教程(21世纪高等学校计算机应用技术规划教材)清华出版社(下载电子文档)教学目标:l熟练掌握C++/Java的重要语法,并能够运用C++/Java进行简单的编程成绩评定:l闭卷考试(80%)l平时

2、20%,包括课堂出勤率、课堂问答情况、作业、上机C++主讲内容:1.C++思想、程序设计方法、主要特点(绪论部分)2.C++的主要语法:变量、常量、指针、引用、重载函数、内联函数(CàC++的快速过渡)3.对象和类的概念、用法和定义;对象初始化;构造函数、析构函数的特点和用法4.对象成员、作用域和成员指针、静态成员和友元5.单继承、多继承、虚函数、多态性6.运算符重载7.模板,包括函数模板和类模板8.异常处理9.C++流及类库(根据情况确定)Chap1绪论一、面向对象思想的由来1.产生原因:l人们希望能更直接与计算机进行

3、交互à寻求一种更能反映人类解决问题的自然办法l软件系统越来越庞大、复杂,传统的结构化方法无法满足易维护、易扩充、可重用性好等要求à模拟客观世界的构成法则来构造软件系统(将系统分解成一系列的使能实体)2.实质:从现实世界中客观存在的事物(即对象)出发来构造软件系统,追求软件系统对现实世界的直接模拟,尽量将现实世界中的事物直接映射到软件系统的解空间。物质:一辆白色的自行车意识:自行车具体事物:一辆白色的自行车抽象概念:自行车类图1.1现实世界与面向对象系统之间的对应关系现实问题空间面向对象解空间物质à对象意识à抽象概念(类)

4、二、面向对象方法构造软件系统的步骤1.系统分析——建立对象模型l发现对象;定义对象属性和服务;分析对象之间的联系;建立系统的对象模型、动态模型和功能模型2.系统设计——确立对象模型的实现方法l系统分解;设计问题域子系统,确定应用系统的边界;设计人-机交互子系统;设计任务管理子系统(分析系统的并发性、分配处理器的任务);设计数据管理子系统(选择数据存储管理模式);处理全局资源的访问;等等3.对象设计——三种模型转换成类l对象模型à类的属性:主要考虑对象关联的实现方法l动态模型à类的方法:选用事件驱动的运行环境l功能模型à主

5、控模块或子控模块:顺序执行or事件驱动方式实现流程控制4.对象实现——编码l选用合适的面向对象程序设计语言(OOPL)和开发环境(DE),定义类的属性及其方法,编写主控模块及子控模块三、面向对象的程序设计1.结构化的程序设计(StructureProgramming)l特点:采用模块分解与功能抽象,自顶向下、分而治之的手段,从而将一个较复杂的程序系统的设计任务分成许多易于控制和处理的子任务,这些子任务都是可独立编程的子程序模块。l存在的问题:面向数据/过程的设计方法,数据和过程分离,导致1)程序的可重用性差(不同的数据格

6、式即使做相同的处理或对相同的数据格式要做不同的处理都需要编写不同的程序)2)数据与程序有时不相容(存在错误的数据调用正确的程序模块或正确的数据调用错误的程序模块的可能性)2.面向对象的程序设计(Object-OrientedProgramming-OOP)l特点:1)将数据及对数据的操作放在一起,作为一个相互依存、不可分割的整体来处理,采用数据抽象和信息隐藏技术。(封装性)2)将对象及对对象的操作抽象成一种新的数据类型——类,并且考虑不同对象之间的联系和对象类的重用性。(类、对象、消息、继承)OOP吸收了结构化程序设计的

7、优点,又考虑了现实世界与面向对象解空间的映射关系(追求目标:问题求解空间尽可能简单化)l例:自行车对象数据抽象自行车类属性:架子尺寸车轮尺寸颜色原材料厂商操作:转弯移动修理图1.2对象和类classBike{private:doublesize1;doublesize2;intcolor;charmaterial[20];charmanu[20];public:voidwheel();voidmove();boolrepair();};C++描述l优点:1)有希望解决软件工程的两个主要问题——软件复杂性控制和软件生产率的

8、提高;2)符合人类的思维习惯,能够自然地表现现实世界的实体和问题。四、面向对象的程序设计语言1.发展历程:n封装机制:Ada,Modula-2n对象抽象:Simula——OO锥形n面向对象的语言:Smalltalk-80,C++,ObjectedPascal(Delphi),Java,C#,VB.NETuC++:以C

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。