计算机专业教学中面向对象编程思维技巧.docVIP

计算机专业教学中面向对象编程思维技巧.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机专业教学中面向对象编程思维技巧

计算机专业教学中面向对象编程思维技巧   摘要:概括了面向对象编程中的常用抽象概念,提出了几种帮助学生提高面向对象编程思维能力的思维技巧。教学实践表明,计算机专业教师将这些思维技巧传授给学生后,极大地提升了学生进行面向对象编程的抽象思维能力和实际动手开发能力,从而编写出符合软件工程标准的高质量程序。   关键词:面向对象;计算机教学;编程思维   中图分类号:G642.0 文献标识码:A 文章编号:1671-0568(2012)35-0050-02   一、面向对象编程概述   1. 面向对象哲学观   面向对象思想认为,世界是由对象构成的一张关系网,对象间通过消息进行通信,见图1。系统的建造方法是创建一些对象,并将它们组装在一起,让它们能够相互发送消息。这让我们能够以动态的、互相通信的结构来思考一个系统,并且可以通过改变对象的组合来改变系统的行为。   图1 对象之网   2. 对象的主要特点   首先,对象是对客观世界中事物的抽象,是相对独立的实体。其次,由于客观世界中的事物通常既具有静态的属性,又具有动态的行为,因此对象也同时具有状态和行为。由于对象封装了数据和操作,从而具有较好的独立性和可重用性。   3. 对象间的关系   对象间通信和协作方式灵活多样,原因不言而喻:对象结构用来映射客观世界,而客观世界是五光十色、千姿百态的。例如,一个对象向另一个对象请求服务以实现自己的职责,从而在这两个对象间形成了一种依赖关系。又例如,一个对象在自己的状态发生改变时,可以通知其它对象,从而形成一种通知关系。面向对象哲学观认为,客观世界中的任何事物都是对象,事物间的任何复杂关系都可以抽象为对象间的关系。   二、面向对象编程思维技巧研究   1. 对象隐喻   隐喻是一种比喻和借用,以形象地描述一个事物。关于对象的一个重要隐喻是:对象就像一个个活的生物细胞,相互独立又能与外界进行信息交换。20世纪60年代艾伦·凯在创建Smalltalk语言时提出了“对象”这一概念,他的灵感就来源于生物细胞。通过向学生介绍这个隐喻,可以调动学生的想象力,充分发挥他们的形象思维能力,从而建立起一个关于对象的直观概念。   对象的另一个隐喻是:生物细胞通过细胞膜将自身与外界环境相隔离,对象则通过封装机制达到同样目的。通过向学生介绍这一隐喻,使学生直观地了解到对象有内外之分,对象内部的成分是由private访问修饰符声明的内容,而对象外部的成分是由public访问修饰符声明的内容。将对象比喻成独立且相互通信的生物细胞,可以加深学生对这一最为重要的基本概念的理解。   2. 对象创建   程序中的对象不是程序一运行就都自动产生的,而是按需创建。对象作为程序运行时的物理实体单位,在创建时需要使用一定的内存资源,而在销毁时释放掉所占用的内存资源。每个对象都有其生命期。一个对象要么是由系统(如Java虚拟机)创建,要么是由另一个对象创建。一个对象创建后,要么是由系统使用某种机制进行销毁(如Java的垃圾自动回收机制),要么是由程序员编写的一段代码完成销毁。对象在创建时,一旦得到相关的内存资源后,应立即将这些资源初始化,保证对象持有正确的初始数据和可用性。对象的创建和初始化工作顺次并连续发生,系统或程序员通过调用该对象的一个构造器来保证这一点。任何对象在创建完成后,应当处于待命状态,随时可被使用。对于学生而言,理解对象的整个创建过程是一个难点,因为对象的构造器是在一个类中,而对象的创建代码通常是在另一个类中,代码的结构会显得较为零散。对象创建其实质是一种对象关系,因为一个对象通常总是由另一个对象来创建的。学生应当牢牢掌握“对象总是先创建后使用”的思维方式。   3. 对象组合   对象组合是将多个小对象按一定结构装配成一个大对象,从而实现更复杂和更强大的能力。对象组合是对象间的一种结构关系。可以说,现实世界中事物间有多少种结构关系,程序世界中就有多少种对象组合方式。面向对象编程就是在计算机世界中模拟现实世界。对象组合可以进一步细分:若一个对象中组合了多个相同类型的对象,该对象称为“容器”。一个容器对象,按其组合对象的结构关系,又可分为线性表容器、集合容器、映射表容器等。若一个对象中组合了多个不同类型的对象,我们称之为“装配”。为学生介绍多种对象组合方式时,应当以现实世界的事物为例,使学生树立“对象组合反映现实事物结构”的思维方式。   4. 对象继承   对象间的继承关系是一种层次结构,它是对现实世界事物间的层次关系(如父子关系)的逻辑映射。继承是一种强大的程序复用机制,使得子类对象立即获得父类对象的全部能力。但滥用继承会造成程序逻辑的混乱和错误。只有当子类对象确实是父类对象的一种子类型并完全具备父类对象的完整特征时,子类对象才能继承父类对象。学生在学习对象继承

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档