电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPTX文档下载
分享到微信 分享到微博 分享到QQ空间

C#编程和.NET框架 教学课件 ppt 作者 崔建江 第4章 第四章

  • 资源ID:89449753       资源大小:893.04KB        全文页数:196页
  • 资源格式: PPTX        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

C#编程和.NET框架 教学课件 ppt 作者 崔建江 第4章 第四章

C#编程和.NET框架 (第二版) 主讲人:崔建江 东北大学信息科学与工程学院,C#编程与.NET框架,第3章 面向对象的C#编程方法,第4章:面向对象的编程技术,3,概要内容,本章介绍了面向对象程序设计的基本知识,包括类和对象一些基本概念;另外,本章还描述了面向对象设计的重要原理,包括封装性、继承性和多态性。,第4章:面向对象的编程技术,4,第4章 面向对象的编程技术,1.面向对象 2.类 3.封装性 4.继承性 5.多态性,第4章:面向对象的编程技术,5,4.1 面向对象,什么是面向对象程序设计? 为什么产生面向对象程序设计?,第4章:面向对象的编程技术,6,4.1 面向对象,1 结构化程序设计 结构化方法围绕处理功能的实现“过程”来构造软件系统,特别适用于需求能够预先确定的系统的开发。 指导思想:自顶向下、逐步求精、模块化。语句结构化。 基本原则:抽象和功能分解 结构化方法围绕处理功能的实现“过程”来构造软件系统,第4章:面向对象的编程技术,7,4.1 面向对象,2. 面向对象程序设计 指导思想:以对象为中心,分析、设计及构 造应用程序的机制。 利用面向对象的方法求解问题时,观察问题的角度将定位于现实世界中存在的客体,并在解空间中用对象来描述客体,用对象之间的关系来描述客体之间的联系,用对象之间的通信来描述客体之间的相互交流及相互驱动,从而达到问题域到解空间的直接映射,实现计算机系统对现实世界环境的真正模拟。,第4章:面向对象的编程技术,8,4.1 面向对象,3 区别举例 任务:对提供单词进行检查 分析: 结构化方法 四个动作: 输入单词、拼写检查、寻找单词、输出信息 三个模块: 输入单词、检查寻找、结果输出,第4章:面向对象的编程技术,9,4.1 面向对象,3 区别举例 任务:对提供单词进行检查 分析: (2) 面向对象方法 三个客体: 用户、单词、字典 两个大类: 单词、字典,第4章:面向对象的编程技术,10,4.1 面向对象,区别:分析问题角度不同 结构化功能操作之间的关系 面向对象各个对象之间的关系 优缺点: 结构化适用功能不太复杂,关系明朗的小 型程序中。 面向对象分析问题角度与现实世界考虑问 题的角度相一致,适用于大型程序中。,第4章:面向对象的编程技术,11,4.1 面向对象,基于组件和基于对象之间区别: 有些人认为C#是基于组件的。 基于组件的开发可以看作是面向对象技术的扩展。组件是执行特定任务的独立代码片段。基于组件的编程需要创建大量可被重用的独立组件,可以将组件链接起来,创建应用程序。,第4章:面向对象的编程技术,12,4.1 面向对象,4. 两个重要概念对象 何为对象? 自然实体 (有形) 概念实体 (无形),生产计划,第4章:面向对象的编程技术,13,4.1 面向对象,4. 两个重要概念类 具有相同属性和操作的一组对象的集合。,第4章:面向对象的编程技术,14,面向对象方法,面向对象是一种新的软件工程方法,程序设计范型 基本技术:使用对象、类、继承、封装、消息等基本概念进行程序设计和实现 基本思想:尽可能地运用人类的自然思维方式来构造软件系统。现实世界的问题是由客观实体和实体之间的联系构成的,对象就是客观实体的抽象。,第4章:面向对象的编程技术,15,面向对象技术的基本观点,客观世界是由对象组成的。 具有相同的数据和相同的操作的对象可以归并为一类,对象是类的一个实例。类可以产生对象。 类可以派生子类,子类继承父类的特性。 对象之间通过消息传递相互联系。 软件工程学家Codd和Yourdon认为: 面向对象程序=对象+类+继承+通讯,第4章:面向对象的编程技术,16,面向对象的软件工程(OOSE)方法,面向对象的分析(OOA) 面向对象的设计(OOD) 面向对象的编程(OOP) 面向对象的测试(OOT) 面向对象的维护(OOSM),第4章:面向对象的编程技术,17,面向对象方法的优点,按照人类的自然思维方式,面对客观世界建立软件系统模型。有利于对问题域和系统责任的理解,有利于人员交流。 对需求变化的适应性。把最稳定的部分,即对象作为构筑系统的基本单位,而把容易发生变化的部分,既属性与服务,封装在对象之内,对象之间通过接口联系,使得需求变化的影响尽可能地限制在对象内部。 可维护性好。 支持软件重用。对象所具有的封装性和信息屏蔽等特性,使它容易实现软件重用。对象类可以派生出新类,类可以产生实例对象,这些就实现了对象类的数据结构和操作代码的软构件重用。,第4章:面向对象的编程技术,18,面向对象的软件开发语言与工具,1981推出的Smalltalk-80 面向对象的C/C+、Basic、Pascal、Fortran、Lisp、ADA、Java、C#等 MicroSoft公司的Visual C+、Visucal Basic 计算机辅助软件工程(CASEComputer Aided Software Engineering) Rational Rose一个面向对象的且支持UML语言的CASE工具,第4章:面向对象的编程技术,19,面向对象的系统分析与设计方法 -面向对象中的基本概念,对象 (Object )/类(Class) 抽象 (Abstraction) 继承 (Inheritance) 多态性(Polymorphism) 封装 (Encapsulation) 消息 (Message) 关联 (Association) 聚集 (Aggregation),第4章:面向对象的编程技术,20,什么是对象?(Object),一个对象代表了一个现实的或虚构的实体 自然实体(有形) 概念实体(无形),化学过程,生产计划,第4章:面向对象的编程技术,21,对象(对象技术围绕对象的概念来建立),对象从不同的角度有不同的含义 问题论域:对象指现实世界中的一个事物。如:人、房屋、洗衣机等 建模和实现:对象描述客观事物的一个实体,是构成系统的基本单元。 对象特征:静态特征和动态特征 问题论域:一个对象所包含的特性和行为 系统:一个对象所包含的数据(属性)和使用这些数据的所有功能(操作) 对象属性:描述对象静态特征的数据项 对象操作:是对象动态特征的体现 对象之间通过消息通信 一个对象通过向另一个对象 发送消息激活某一 个功能,第4章:面向对象的编程技术,22,什么是类?(Class),类是对象的抽象,给出了属于该类的全部对象的抽象定义。(从对象抽象出类) 问题域:类是一组具有相同特性和行为的对象的集合 系统: 共同的特性通过属性表现出来 (数据) 共同的行为通过操作表现出来 (功能) 类是对象的模板,用它可以产生多个对象,一个具体的对象只是类的一个实例。(从类产生对象) 在面向对象的系统分析与设计中,并不需要对逐个对象进行说明,而是着重描述代表一批对象共性的类,第4章:面向对象的编程技术,23,类的示例,Structure Name Address Position Salary Start Date End Date,Class Employee,Behavior Hire Fire Promote Increase Salary Retire,第4章:面向对象的编程技术,24,类,具有相同特征和操作的对象可以放到类中。 在下面图中可得到哪些类?,第4章:面向对象的编程技术,25,对象的类,可定义几个类?,第4章:面向对象的编程技术,26,属 性,属性是类的特征或特性 属性的值是某一特定对象的属性值 在类中属性名必须是唯一的 每一个类的实例都有为这个类定义的所有属性的值 例如:,银行帐户类属性 帐号 银行名称 拥有者 金额,Mary的银行帐户属性值 12345678 First National Bank Mary Smith $1024.48,第4章:面向对象的编程技术,27,属性取决于视点,从销售人员的角度 型号 价格 颜色 里程数,从维修人员的角度 马达类型 传动类型 维修记录,一辆汽车具有的属性:,第4章:面向对象的编程技术,28,操 作,对象的行为由为此对象定义的一系列操作决定的 操作访问或修改对象的属性值 一个类的所有实例都可使用在该类中定义的操作,第4章:面向对象的编程技术,29,操作取决于视点,从销售人员的角度 处理客户定单 准备销售合同 加入清单 从清单中删除,从维修人员的角度 测试刹车 修理刹车 转动轮胎 检查马达速度,一辆汽车具有的操作:,第4章:面向对象的编程技术,30,属性和操作的标记法,在类的图标中描述属性和操作 通常只显示最重要的属性和操作,避免图形混乱 属性显示在操作上方,操作的名字后跟有(),字段,数据成员,方法成员,第4章:面向对象的编程技术,31,类和对象的关系,每一个对象都是某一个类的实例 每一个类在某一时刻都有零个或更多的实例 类是静态的; 它们的存在、语义和关系在程序执行前就已经定义好了 对象是动态的; 在程序执行时可以被建立和删除,第4章:面向对象的编程技术,32,抽象( Abstraction)类的建立,一个对象是现实世界中一个实体的抽象 抽象是一种单一化的描述: 强调与给出应用有关的特性 抑制不相关的特性 一个类是一组对象的抽象 抽象通过注重主要的、与问题有关的特性,帮助 处理复杂系统 关键在于找出重要的、有关的类,以及每个类中重要、有关的操作和属性,第4章:面向对象的编程技术,33,继承(Inheritance),子类(特化类、派生类)可以自动拥有父类(基类、泛化类、超类)的属性和操作。 例如: “家用电器”类是父类, 公共的属性:开关、电线, 公共的操作是:开机、关机, 则:“洗衣机”、“冰箱”、“电视机” 等是子类 继承可以提高软件的可重用性。,第4章:面向对象的编程技术,34,多态性(Polymorphism),在父类中定义的属性和服务为其子类继承后,可以具有不同的数据类型或表现出不同的行为。重载 如:“打开一扇门” “打开一个银行帐号” “打开一段对话” 等, 虽然都是“打开”操作,但执行的是不同的行为动作。 对建模者,多态性也很重要,它可以让建模者用客户的语言和术语与客户交流。有些术语可能导致操作词有多种不同的含义。理解多态性的概念可以让建模者省去发明新术语以及维护术语一致性的麻烦。 多态性机制不但为软件的结构设计提供了灵活性,减少信息冗余,而且显著提高了软件的可复用性和可扩充性。,第4章:面向对象的编程技术,35,封装(Encapsulation),将属性和操作包装成一个单元,使得对状态的访问和修改只能通过封装提供的接口进行。 封装体现了面向对象方法的“信息屏蔽与局部化”的原则。,第4章:面向对象的编程技术,36,消息(Message),对象间在交互中所传送的通讯信息。 如:电视机,遥控器对象向电视机对象发送消息。 注意:消息的传递在程序中的体现。哪些可以完成该功能。,第4章:面向对象的编程技术,37,关联(Association),关联:对象之间所存在的联系。 联系:分类关系(一般与特殊),聚集和组成关系(部分与整体),属性之间的静态联系(实例连接),对象行为的动态联系(消息连接)。 多重性:关联中一个类的对象可以对应另一个类的多个对象。,第4章:面向对象的编程技术,38,4.1 进一步的内容-类图与对象图设计,UML中的对象类图(Class Diagram)与对象图(Object Diagram)具有强大的表达能力,能有效地对现实世界的业务领域和计算机系统建立可视化的对象模型。 类图与对象图用来表达对象模型的静态结构。,第4章:面向对象的编程技术,39,对象类图,类图表达一组类和它们之间的联系。 描述各个对象类本身的组成,即类的属性、操作和对对象的约束条件等。 描述系统中对象类之间的各种静态的联系。 类图是一种静态结构图,它描述的是系统的静态结构,而不是系统的行为。 类之间的静态联系主要类型有:关联、聚集、组合、泛化/特化、

注意事项

本文(C#编程和.NET框架 教学课件 ppt 作者 崔建江 第4章 第四章)为本站会员(E****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.