计算机应用基础2程序设计基础.ppt

上传人:asd****56 文档编号:87338600 上传时间:2023-04-16 格式:PPT 页数:41 大小:482.50KB
返回 下载 相关 举报
计算机应用基础2程序设计基础.ppt_第1页
第1页 / 共41页
计算机应用基础2程序设计基础.ppt_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《计算机应用基础2程序设计基础.ppt》由会员分享,可在线阅读,更多相关《计算机应用基础2程序设计基础.ppt(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第2章章程序设计基础程序设计基础知识类型:理论知识类型:理论学时:学时:2学时学时分值:约分值:约4分分2.1程序设计方法与风格程序设计方法与风格l方法:方法:l面向过程的结构化程序设计方法面向过程的结构化程序设计方法l面向面向对象对象的程序设计方法的程序设计方法l风格:风格:l清晰第一、效率第二清晰第一、效率第二l源程序文档化源程序文档化l数据说明的方法数据说明的方法l语句的结构语句的结构l输入和输出方法输入和输出方法2.2结构化程序设计结构化程序设计l程序的目的:用于数学计算程序的目的:用于数学计算l主要工作:设计求解问题的过程主要工作:设计求解问题的过程2.2结构化程序设计结构化程序设

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

3、的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。许多易于控制和处理的子任务,便于开发和维护。2.2结构化程序设计结构化程序设计l缺点:缺点:可重用性差、数据安全性差、难以开发可重用性差、数据安全性差、难以开发大大型型软件和软件和图形界面图形界面的应用软件的应用软件l把数据和处理数据的过程分离为相互独立的实体。把数据和处理数据的过程分离为相互独立的实体。l当数据结构改变时,所有相关的处理过程都要进行相当数据结构改变时,所有相关的处理过程都要进行相应的修改。应的修改。l每一种相对于老问题的新方法都要带来额外的开销。每一种相对于老问题的新方法都要带来额外的开销。l图形用户界面的应

4、用程序,很难用过程来描述和实现,图形用户界面的应用程序,很难用过程来描述和实现,开发和维护也都很困难。开发和维护也都很困难。2.2结构化程序设计结构化程序设计与人类习惯的思维方法一致与人类习惯的思维方法一致稳定性好稳定性好可重用性好可重用性好易于开发大型软件产品易于开发大型软件产品可维护性好可维护性好2.3面向对象的程序设计面向对象的程序设计2.3.1面向对象方法的特点面向对象方法的特点l将将数据数据及对数据的及对数据的操作方法操作方法封装封装在一起,作为一在一起,作为一个相互依存、不可分离的整体个相互依存、不可分离的整体对象对象。l对同类型对象抽象出其共性,形成对同类型对象抽象出其共性,形成

5、类类。l类通过一个简单的类通过一个简单的外部接口外部接口,与外界发生关系。,与外界发生关系。l对象与对象之间通过对象与对象之间通过消息消息进行通讯。进行通讯。2.3面向对象的程序设计面向对象的程序设计2.3.1面向对象方法的特点面向对象方法的特点1.对象(对象(object)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念l是系统中用来描述客观事物的一个是系统中用来描述客观事物的一个实体实体,它是,它是用来构成系统的一个基本单位。对象由一组用来构成系统的一个基本单位。对象由一组属属性性和一组和一组行为行为构成。构成。l属性属性:用来描述对象:用来

6、描述对象静态特征静态特征的数据项。的数据项。l行为行为:用来描述对象:用来描述对象动态特征动态特征的操作序列。的操作序列。有一个人名字叫胡哥,性别男,身高有一个人名字叫胡哥,性别男,身高1.80m,体重体重68kg,可以修电器,可以教计算机课,描述该对象可以修电器,可以教计算机课,描述该对象如下:如下:对象的对象的静态特征静态特征:性别:男性别:男身高:身高:1.80m体重:体重:68kg对象的对象的动态特征动态特征:回答身高回答身高回答体重回答体重回答性别回答性别修理电器修理电器教计算机课教计算机课1.对象(对象(object)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法

7、的基本概念面向对象方法的基本概念l对象的基本特点对象的基本特点l标识唯一性标识唯一性l分类性分类性l多态性多态性l封装性封装性1.对象(对象(object)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念l对象的定义对象的定义全局对象、局部对象全局对象、局部对象、静态对象、堆对象、静态对象、堆对象classDeskpublic:intweight;intheight;intwidth;intlenth;Deska;main()Deskb;全局全局对象对象局部局部对象对象2.类类(Class)和实例和实例(Instance)2.3面向对象的程序设计

8、面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念(1)从结构到类从结构到类(2)什么是类什么是类l具有相同具有相同属性和行为属性和行为的的一组对象的集合一组对象的集合l一个属于某类的一个属于某类的对象对象称为该类的一个称为该类的一个实例实例。钟表钟表类的定义类的定义l属性:属性:intHour,intMinute,intSecondl行为:行为:SetTime(),ShowTime()classClockpublic:voidSetTime(intNewH,intNewM,intNewS);voidShowTime();private:intHour,Minute,Se

9、cond;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#includeclass Clock ./类的声明略类的声明

10、略/.类的实现略类的实现略int main()Clock myClock;myClock.SetTime(8,30,30);myClock.ShowTime();3.消息消息(message)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念l消息是系统向对象发出的服务请求,是对象之消息是系统向对象发出的服务请求,是对象之间的间的通信机制通信机制。提供服务的对象负责消息协议。提供服务的对象负责消息协议的格式和消息的接收,请求服务的对象提供输的格式和消息的接收,请求服务的对象提供输入信息,获取应答消息内容。入信息,获取应答消息内容。l在面向对象中,消

11、息常常通过在面向对象中,消息常常通过函数调用函数调用来实现。来实现。状态:胡哥状态:胡哥29岁岁男男计算机计算机讲师讲师680实例:实例:行为:评职称行为:评职称涨工资涨工资抽象抽象属性:姓名属性:姓名年龄年龄性别性别单位单位职称职称工资工资类:讲师类:讲师操作:评职称操作:评职称涨工资涨工资数据数据结构结构方法名方法名方法:评职称方法:评职称步骤步骤条件条件涨工资涨工资公式公式方法体方法体class讲师讲师胡哥胡哥;胡哥胡哥.评职称评职称(.);胡哥胡哥.调工资调工资(.);消息消息4.继承继承(inheritance)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概

12、念面向对象方法的基本概念l继承对于继承对于软件复用软件复用有着重要意义,是面向对象技有着重要意义,是面向对象技术能够提高软件开发效率的重要原因之一。术能够提高软件开发效率的重要原因之一。l定义:定义:特殊类特殊类的对象拥有其的对象拥有其一般类一般类的全部属性与的全部属性与服务,称作特殊类对一般类的服务,称作特殊类对一般类的继承继承。l例如:将轮船作为一个一般类,客轮便是一个特殊类。例如:将轮船作为一个一般类,客轮便是一个特殊类。l保持已有类的特性而构造新类的过程称为保持已有类的特性而构造新类的过程称为继继承。承。l在已有类的基础上新增自己的特性而产生新在已有类的基础上新增自己的特性而产生新类的

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

14、.2面向对象方法的基本概念面向对象方法的基本概念继承与派生问题举例继承与派生问题举例继承与派生问题举例继承与派生问题举例继承与派生问题举例继承与派生问题举例继承与派生问题举例继承与派生问题举例多继承、单继承多继承、单继承5.多态性多态性(polymorphism)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念l多态是指在多态是指在一般类一般类中定义的属性或行为,被中定义的属性或行为,被特特殊类殊类继承继承之后,可以之后,可以具有不同的具有不同的数据类型或表数据类型或表现出现出不同的行为不同的行为。这使得同一个属性或行为在。这使得同一个属性或行为

15、在一般类及其各个特殊类中具有不同的语义。一般类及其各个特殊类中具有不同的语义。l例如:例如:l多态:同一名称,不同的功能实现方式。多态:同一名称,不同的功能实现方式。l目的:达到行为标识统一,减少程序中标目的:达到行为标识统一,减少程序中标识符的个数。识符的个数。l实现:重载函数和虚函数实现:重载函数和虚函数5.多态性多态性(polymorphism)2.3面向对象的程序设计面向对象的程序设计2.3.2面向对象方法的基本概念面向对象方法的基本概念总结总结l面向对象程序设计(英语:面向对象程序设计(英语:ObjectOrientedProgramming,缩写:,缩写:OOP),指一种程序),指

16、一种程序设计范型,同时也是一种程序开发的设计范型,同时也是一种程序开发的方法论方法论。它将它将对象对象作为程序的作为程序的基本单元基本单元,将程序和数据,将程序和数据封装封装其中,以提高软件的重用性、灵活性和扩其中,以提高软件的重用性、灵活性和扩展性。展性。类l类(类(Class)定义了一件事物的抽象特点。通)定义了一件事物的抽象特点。通常来说,类定义了事物的属性和它可以做到的常来说,类定义了事物的属性和它可以做到的(它的行为)。(它的行为)。l类可以为程序提供模版和结构。类可以为程序提供模版和结构。l一个类的方法和属性被称为一个类的方法和属性被称为“成员成员”。类狗狗私有成员私有成员:体重体

17、重毛皮颜色毛皮颜色.公有成员公有成员:吠叫吠叫().对象l对象(对象(Object)是类的实例。)是类的实例。类狗类狗莱丝;莱丝;莱丝莱丝.毛皮颜色毛皮颜色=棕白色棕白色莱丝莱丝.吠叫吠叫();我们无法让狗这个类去吠叫,但是我们我们无法让狗这个类去吠叫,但是我们可以让对象可以让对象莱丝莱丝去吠叫,正如狗可以去吠叫,正如狗可以吠叫,但没有具体的狗就无法吠叫。吠叫,但没有具体的狗就无法吠叫。方法(行为)l方法(方法(Method)是一个类能做的事情,但方法并没)是一个类能做的事情,但方法并没有去做这件事。有去做这件事。l作为一条狗,莱丝是会吠叫的,因此作为一条狗,莱丝是会吠叫的,因此“吠叫吠叫()

18、”就是它的一就是它的一个方法。与此同时,它可能还会有其它方法,例如个方法。与此同时,它可能还会有其它方法,例如“坐下坐下()”,或者,或者“吃吃()”。对一个具体对象的方法进行调用并不对一个具体对象的方法进行调用并不影响其它对象,正如所有的狗都会叫,但是你让一条狗叫不影响其它对象,正如所有的狗都会叫,但是你让一条狗叫不代表所有的狗都叫。代表所有的狗都叫。l类狗类狗莱丝,泰尔;莱丝,泰尔;莱丝莱丝.吠叫吠叫();则泰尔是不会吠叫的,因为这里的吠叫只是对对象则泰尔是不会吠叫的,因为这里的吠叫只是对对象莱丝莱丝进进行的。行的。封装性l具备封装性(具备封装性(Encapsulation)的面向对象程序

19、设计隐藏了某)的面向对象程序设计隐藏了某一方法的具体执行步骤,取而代之的是通过消息传递机制传送一方法的具体执行步骤,取而代之的是通过消息传递机制传送消息给它。消息给它。l/*一个面向过程的程序会这样写:一个面向过程的程序会这样写:*/结构体狗结构体狗莱丝莱丝;设置音调设置音调(莱丝,莱丝,5);吸气吸气(莱丝莱丝);吐气吐气(莱丝莱丝);l/*当狗的吠叫被封装到类中,任何人都可以简单地使用:当狗的吠叫被封装到类中,任何人都可以简单地使用:*/类狗类狗莱丝;莱丝;莱丝莱丝.吠叫吠叫();封装封装是通过是通过限制限制只有只有特定类的特定类的实例实例实例实例可以可以访问访问这一这一特特定类的定类的成

20、员成员成员成员,而它们通常利用,而它们通常利用接口接口实现消息的传入实现消息的传入传出。传出。classMeiNu/美女类!美女类!.private:intXW;/胸围胸围intYW;/我就不说了噢我就不说了噢:)intTW;/我还是不说了噢我还是不说了噢:);MeiNujordan;/nowis乔丹乔丹!jordan.XW=34;jordan.YW=24;jordan.TW=34;继承性与多态性继承性与多态性l继承性(继承性(Inheritance)是指,在某种情况下,)是指,在某种情况下,一个类会有一个类会有“子类子类”。l多态性(多态性(Polymorphism)指方法在不同的类)指方法

21、在不同的类中调用可以实现的不同结果。中调用可以实现的不同结果。类狗类狗莱丝;莱丝;类鸡类鸡鲁斯特;鲁斯特;莱丝莱丝.叫叫();鲁斯特鲁斯特.叫叫();鸡啼鸡啼犬吠犬吠练习题1.下面描述中,符合结构化程序设计风格的是下面描述中,符合结构化程序设计风格的是_。A.使用顺序、选择和重复(循环)三种基本控制结构表示使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑程序的控制逻辑B.模块只有一个入口,可以有多个出口模块只有一个入口,可以有多个出口C.注重提高程序的执行效率注重提高程序的执行效率D.不使用不使用goto语句语句2.下面概念中,不属于面向对象方法的是下面概念中,不属于面向对象方法

22、的是_。A.对象对象B.继承继承C.类类D.过程调用过程调用3.结构化程序设计主要强调的是结构化程序设计主要强调的是_。A.程序的规模程序的规模B.程序的易读性程序的易读性C.程序的执行效率程序的执行效率D.程序的可移植性程序的可移植性4.对建立良好的程序设计风格,下面描述正确的是对建立良好的程序设计风格,下面描述正确的是_。A.程序应简单、清晰、可读性好程序应简单、清晰、可读性好B.符号名的命名要符合语法符号名的命名要符合语法C.充分考虑程序的执行效率充分考虑程序的执行效率D.程序的注释可有可无程序的注释可有可无5.下面对对象概念描述错误的是下面对对象概念描述错误的是_。A.任何对象都必须有

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

24、计程序时,应采纳的原则之一是在设计程序时,应采纳的原则之一是_。A.程序结构应有助于读者理解程序结构应有助于读者理解B.不限制不限制goto语句的使用语句的使用C.减少或取消注解行减少或取消注解行D.程序越短越好程序越短越好9.面向对象的设计方法与传统的的面向过程的方法有本质不同,面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是它的基本原理是_。A.模拟现实世界中不同事物之间的联系模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题使用现实世界的概念抽象地思考问题从

25、而自然地解决问题D.鼓励开发者在软件开发的绝大部分中都用实际领域的概念鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考去思考10采用面向对象技术开发的应用系统的特点是采用面向对象技术开发的应用系统的特点是_。A重用性更强重用性更强B运行速度更快运行速度更快C占用存储量小占用存储量小D维护更复杂维护更复杂1结构化程序设计的三种基本逻辑结构为顺序、选择和(结构化程序设计的三种基本逻辑结构为顺序、选择和()2在面向对象方法中,信息隐蔽是通过对象的(在面向对象方法中,信息隐蔽是通过对象的()性来实现)性来实现的的.3类是一个支持集成的抽象数据类型,而对象是类的(类是一个支持集成的抽象数据类型,

26、而对象是类的()4在面向对象方法中,类之间共享属性和操作的机制称为(在面向对象方法中,类之间共享属性和操作的机制称为()。5.面向对象的程序设计方法中涉及的对象是系统中用来描述客面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个观事物的一个()。6.一个类可以从直接或间接的祖先中继承所有属性和方法。采用一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的这个方法提高了软件的()7.面向对象的模型中,最基本的概念是对象和面向对象的模型中,最基本的概念是对象和()。8.结构化程序设计是一种面向结构化程序设计是一种面向()的设计方法的设计方法.9.对象的基本特点包

27、括标识唯一性、分类性、对象的基本特点包括标识唯一性、分类性、多态性、(多态性、()和模块独立性和模块独立性10.在面向对象分析和设计中在面向对象分析和设计中,通常把对象所进行的操作称为通常把对象所进行的操作称为()11.使用已经存在的类定义作为基础建立新的类定义使用已经存在的类定义作为基础建立新的类定义,这样的技这样的技术称为术称为()12.继承使得继承使得相似的对象可以共享代码和数据结构相似的对象可以共享代码和数据结构,从而大大减从而大大减少了程序中的冗余信息少了程序中的冗余信息,提高软件的提高软件的()13.对象和类的关系可以表示为对象和类的关系可以表示为()和()的关系)和()的关系14

28、.结构化结构化程序设计的原则中程序设计的原则中,“先考虑总体,后考虑细节;先先考虑总体,后考虑细节;先考考虑全局目标,后考虑局部目标虑全局目标,后考虑局部目标”称为称为()。15.在消息传递中,对象根据所接受的消息而做出动作,同样的在消息传递中,对象根据所接受的消息而做出动作,同样的消息被不同的对象接受时可导致完全不同的行动,该现象称消息被不同的对象接受时可导致完全不同的行动,该现象称为为()。1.(06.4月月)下列选项中不属于结构化程序设计方法的是下列选项中不属于结构化程序设计方法的是A)自顶向下自顶向下B)逐步求精逐步求精C)模块化模块化D)可复用可复用2.(06.4月月)在面向对象方法中,在面向对象方法中,【】描述的是具有相似属性描述的是具有相似属性与操作的一组对象。与操作的一组对象。3.(05.4月月)在面向对象方法中,类的实例称为在面向对象方法中,类的实例称为【】.4.(09.3月月)符合结构化原则的三种基本控制结构是:选择结构、符合结构化原则的三种基本控制结构是:选择结构、循环结构和循环结构和【】。5.(08.4月月)结构化程序设计的基本原则不包括:结构化程序设计的基本原则不包括:A.多态性多态性B.自顶向下自顶向下C.模块化模块化D.逐步求精逐步求精有关等级考试题有关等级考试题

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁