面向对象程序设计思想.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计思想

第8章 类 第8章 类 在前述各章中,侧重介绍了C#语言的一些过程化的基本语法规则和使用方法,而没有提到在所有举例的程序代码中都已经使用的一个关键字class,我们已发现所有的代码都是由class——类来封装组织的。本章正式讨论有关类的概念以及如何用类来构架一个更复杂的应用程序。类是C#语言实现面向对象程序设计的基础,它是C#封装的基本单元,类把对象、属性和方法这些类成员封装在一起构成一个有机整体,即数据结构。当类的成员定义为保护或私有(protected或private)时,外部不能访问;定义为公有(public)时,则任何用户均可访问。通过本章学习,要求掌握定义类和成员的方法,掌握访问成员方法的方式,理解被保护数据如何屏蔽外部访问的原理,从而更深入地理解类的封装性,体会面向对象程序设计的思想。 本章教学目的: 理解面向对象程序设计的思想和基本概念 掌握创建并初始化类的实例的方法 掌握定义、访问类的成员的方法 掌握构造函数和析构函数的定义和使用方法 掌握定义和使用静态成员及实例成员的区别 掌握重载方法、运算符的概念和使用方法 理解类的封装性原理及实施机制(访问修饰符) 第8章 类 8.1 面向对象程序设计思想 8.2 类及其构成 8.3 创 建 对 象 8.4 类的数据成员 8.5 类的方法成员 8.6 类的属性成员 8.7 索 引 器 8.8 运算符重载 8.1 面向对象程序设计思想 传统的结构化编程(如用C语言)就是先设计一组函数,即解决问题的算法,然后针对问题要处理的数据特征找出相应的数据存储方法,即数据结构。这就是最初Pascal语言的设计者——Nicholase.Wirth提出的著名公式:程序=算法+数据结构。 8.1 面向对象程序设计思想 1. 解决问题的思路 首先在对解决问题的方法上,OOP与结构化的解决方法就有很大的差别。 OOP对问题的分析和解决基于两个原则:抽象和分类。 抽象与具体相对应。例如,在日常生活中我们用洗衣机洗衣服时,先将衣服放入洗衣机,然后加入一些洗衣粉,打开水龙头向洗衣机放水,再在控制面板上设置洗衣时间并启动。 在上述使用洗衣机时,人们已处于下面的状态: 不用为洗某种衣服而了解和重新设计改变洗衣机的内部结构。人们使用洗衣机,只需跟它的控制面板打交道,该面板就是洗衣机与人的“接口”,控制面板上的所有控制按钮和时间显示就是接口的工作参数,洗衣机的所有功能都是通过这个“接口”驱动完成的。 不用为某次洗衣而重新编制软件来驱动和控制洗衣机中的微处理器。 可见,人们仅仅把洗衣机看作是一个家用电器使用,在使用时不会去考虑它的内部结构、电路及处理器的设计等细节问题,只是通过它的“接口”,即控制面板来使用它。面向对象程序设计在分析处理问题时,就是采取这种“抽象”思维,即把某一程度的细节“抽象化”,将要解决的问题在不同的层面上进行抽象,设置“接口”驱动功能来实现应用需求。 在用洗衣机洗衣服过程中,人们只要按照面板显示的提示去做,就不会使洗衣机进入不正常的工作状态。如果在正常情况下,洗衣机冒水或不对衣物进行洗涤、甩干了,那就是洗衣机的质量问题,相应的这就是OOP中的类库设计问题。如果误操作引起不洗涤或不甩干,就需要调整操作,这就是OOP应用程序设计中调用类库的参数设置问题。所以在OOP中有两种分工明确的编程:一种是面向对象应用程序设计,另一种是类库设计。 8.1 面向对象程序设计思想 用面向对象的程序设计方法对上述洗衣机洗衣物问题的分析处理思路是: 首先定义这个问题中的对象类型:衣物、洗衣机、水、洗衣粉。 设计对象的模型(创建对象),即洗衣机的制作。这时程序设计在对象一级上。 处理问题的方法设计(类库设计)。这时不用考虑洗衣机的制作,而是设计在洗衣机上可完成的各种不同时间的洗涤和甩干的洗涤方式。 面向对象主程序设计。这是更高级的抽象,程序设计在应用级上。程序流程可以是:放衣物、放水和洗衣粉等,调用某种洗涤方式,如在洗衣机中洗涤4分钟、甩干2分钟或其他洗法,这就是处理问题的方法。可见,面向对象程序描述既简单又完整,解决问题的层次清楚。 而结构化程序设计是将洗衣机的外壳、内部结构、衣物、洗衣粉和水都处于一个程序环境中,其程序显示出层的函数调用结构。控制从手到控制面板,从控制面板进入洗衣机内部,再在内部复杂的电路中流动,最后发出“洗好了”的声音。在这种环境中,没有抽象和问题分层处理的理念,即程序中没有对象,没有能隐藏事物固有复杂性的抽象。所以导致要用洗衣机洗衣服,必须首先是制作洗衣机的专家。而下次洗被单时,又要重复作一个专门洗被单的洗衣机了。 8.1 面向对象程序设计思想 2. 结构化程序和面向对象程序的结构 在面向过程的结构化程序结构中,程序的结构是:程序=(算

文档评论(0)

rovend + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档