面向对象课程设计任务

2024-07-22

面向对象课程设计任务(精选8篇)

1.面向对象课程设计任务 篇一

《面向对象的程序设计基础》课程总结

2014~2015学年第一学期基本结束,“面向对象的程序设计基础”课程的教学任务圆满完成。下面对本学期教学情况进行总结。

1.授课班级为14软件一班、14软件二班两个班级,平均每班授课学时96,两个班总课时量为192。

2.两个班级整体良好。积极努力、勤于思考,学习气氛比较浓厚;上课过程均未出现迟到早退现象。课堂秩序良好,和教师积极互动,发言踊跃,课堂气氛较活跃。

3.本学期两个班施行“翻转课堂”的教学模式,以任务链为载体,同学们通过完任务而掌握相关的知识点,该教学模式可以充分的锻炼同学们自主学习和结对学习的能力,教学效果很明显,教学质量得到了提高。整个学期的学习过程中,通过教师参与检查,学习内容及进度基本按照学期授课计划进行,作业按照作业计划基本完成,完成情况良好,而且部分同学的进度超前。期中考试以测试同学们的一些经典例题的基本程序思想为主,由于大部分题目同学们练习过,所以基本所有同学基本到达测试目的。

4.期末考试以测试同学们的基本知识和经典程序的设计为目的,因为面向对象的程序编写需要编译和运行,采用上机考试。考试成绩偏低,分析原因可能是因为同学们的注意力在解决问题上,对于问题相关的知识点没有系统的掌握,在以后的教学中一定要加强。

5.总评成绩的评定:出勤情况占5%,课堂表现占10%,平时作业占20%,阶段测试占20%,期末考试成绩占45%的比例完成。结果符合要求:85分以上占27%,84~75分占33%,74~60分占33%,60分以下占7%。

6.存在的问题:班风还有待进一步建立和加强。

李志芳

2015年1月13日

2.面向对象课程设计任务 篇二

面向对象程序设计课程是计算机科学与技术专业的专业课, 理论性和操作性较强。教授学生基础的编程理论以及面向对象的编程方法, 通过本课程的学习, 可以有效的培养学生的编程逻辑思维能力和动手编程的能力, 并可以帮助学生提高编程中必备的合作能力。

该课程在教学中存在以下问题, 首先, 课程学时较少, 但需要教授的知识点较多, 有些语法较为复杂, 学生很难在有限的时间内很好的掌握;对学生只能做到基本理论知识的教授, 而很难再进一步, 让学生理解的更为透彻。其次, 在教学方法上, 基本都以小程序为例去讲解一些主要的理论知识点, 帮助学生理解。但学生的主观能动性无法很好的激发, 导致离开例子, 学生无法很好的编写程序, 或者无参考情况下, 无法独立完成基本程序的编写。

针对面向对象课程教学问题中存在的问题, 国内许多教学工作人员对该课程如何达到更好地教学效果, 培养实践能力和编程能力强的学生进行了研究。范振钧[1]提出了基于任务驱动的教学方法, 以解决问题为导向, 协助学生完成程序的编写, 在编写程序的过程中掌握知识。李玉梅[2]将案例驱动教学、多媒体教学、研究型学习三种方法结合起来, 试图提高学生学习的兴趣, 培养学生编程的逻辑思维能力, 加强学生的动手能力, 试图提高学生的整体水平。张焕生[3]提出了面向对象程序设计教学中理论教学、时间教学在方式、内容和考核方式等方面进行改革的相关措施, 以提高教学质量, 培养合格人才。

以上提出的教学改革方法中主要侧重于教师教学方法的改变, 以及考试改革, 但是对于面向对象程序设计这样一门对理论性和实践性要求都较高的课程来说, 如果不充分调动学生课下的学习积极性, 很难取得良好的教学效果。如何调动学生对该课程的学习积极性, 不要从一开始就掉队, 直接产生对课程的“讨厌感”非常重要。

因此, 除了对教学方式提出一些必要的教学改进之外, 主要是调动学生的学习积极性, 首先给学生提供有一个宽松的学习环境, 进行由浅入深, 由易到难, 由慢到快的循序渐进式的学习, 保证学生在学习课程的过程中不掉队;其次, 通过解决实际问题、课后开放趣味性实践作业、网络幕课讲解课堂知识点等方法提高学生对该课程的兴趣, 加强学生通过编程解决实际问题的成就感以全面提高教学质量。

2. 教学方法

针对该门课程存在的问题, 提出了四化教学方法, 通过教学内容“例题化”增加了学生的感性认识, 增强了学生面对问题求解的信心, 以便加深对知识的理解;通过教学形式“多样化”提高学生编程能力、逻辑编程思想;通过教学策略“分层化”帮助学生不断加深对面向对象程序设计的认识和理解, 循序渐进提高编程能力;通过教学过程的“阶段化”培养学生一步一步独立编程及团队合作编程的能力。最终希望学生通过上述方法的学习, 可以较好的掌握面向对象编程的方式, 方法, 具有较好的动手编程能力和团队合作能力。

(1) 内容例题化, 教学内容的设计必须以实例求解为主线索, 且实例必须贴近生活中可能需要解决的事情, 体现分析、设计能力的培养。针对书中每个重要的理论只是, 选择合适的编程题目, 从简单到复杂的传授给学生, 拿到问题, 如何分析, 如何设计, 以及如何编程解决的能力。以此提高学生抽象问题, 解决问题的能力。具体内容要从“实例”引导人手, 将枯燥的概念和公式融入到形象的比喻中, 加大学生学习程序设计的兴趣, 并促进学生的理解和记忆。

(2) 形式多样化, 选择合适的时间点, 通过验证式教学和课题式教学的结合使用加深或强化学生对课堂理论知识的掌握。理论知识较难掌握, 往往上课的时候觉得已经掌握的知识点, 过一段时间又模糊了, 必须及时和反复的巩固和加深学生对课堂所学理论知识的理解, 项目采用递进式的层次验证方法帮助学生加深对课堂所学知识的理解和使用。验证式教学通过单个实验项目, 了解学生对单一知识点理论掌握和使用情况, 考查学生调试、测试程序能力。课题式教学在验证式教学很好完成的基础上, 提出较为复杂的问题, 涵盖若干个相关知识点, 学生根据自己的兴趣爱好确定一个课题进行课题设计, 通过查找相关资料, 提出研究课题, 写出实施计划, 程序实现流程, 考查学生在掌握从过程编程方法到面向对象编程方法的转换能力和现实问题的抽象, 分析, 解决问题能力。

(3) 策略分层化, 课程知识点较多, 难度不一致, 并且学生基础也不一致, 为了兼顾所有学生, 必须采用分层化的教学方法, 按基础, 综合, 实用三个层次, 逐渐递进的引导学生完成具体的教学内容。基础部分可以照顾编程基础较差的学生, 使之不至于从开始就掉队。实用部分主要偏向基础好, 且对编程兴趣较大的学生, 提高这部分学生的编程水平。同时, 借助于网络幕课的使用, 加深学生对关键知识点的理解, 通过互动和知识点实时测试, 提高学生学习该课程理论知识的兴趣。

(4) 过程阶段化, 面向对象程序设计课程课堂学时有限, 只有利用课内课外相结合的方式才能保证较好的教学效果。因此, 课前预习, 课程中根据在预习过程中碰到的难点听课, 及课后的实践, 成为学习本课程必不可少的三个阶段。希望可以通过这三个阶段, 调动学生学习本课程的积极性, 培养学生独立编程能力和团队合作意识。

3. 总结

通过四化教学法, 从两方面保证课程的改革质量, 一是提高学生对面向对象程序设计课程的学习兴趣, 二是结合网络幕课, 选择更为科学的教学教授方法。在保证学生掌握课程理论知识点的基础上, 通过验证式教学加深和巩固学生对理论知识点的掌握, 和基础的编程能力。提高学生的综合素质和竞争能力。通过本文的研究, 为面向对象程序设计课程提供理论基础, 对培养学生程序设计和编写能力提供一定的保证;为其他类似课程的教学模式研究提供参考。

摘要:传统的面向对象程序设计语言课程教学存在内容抽象, 学生水平不一及教学模式单一等问题, 本文提出了一系列的课程教学方法, 包括教学内容“例题化”、教学策略“分层化”、教学形式“多样化”、教学过程“阶段化”的教学方法, 通过教学方法的改变, 帮助学生更好更快的掌握面向对象编程的方法。

关键词:面向对象程序设计,教学方法,网络慕课

参考文献

[1]范振钧, 王建秋.面向对象程序设计课程教学改革探析, 通化师范学院院报, 2011.4.

[2]李玉梅.课程教学改革的研究与实践, 教学与改革, 2012.6

3.面向对象课程设计任务 篇三

关键词:教改 任务驱动 面向对象编程技术

中图分类号:G642 文献标识码:A 文章编号:1673-9795(2012)12(b)-0007-01

1 现状与背景

面向对象的设计方法是20世纪80年代发展起来的一种程序设计方法。面向对象的方法就是将数据以及数据的操作方法放在一起,作为一个项目依存、不可分离的整体—— 对象。对同类型对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信[1]。相对与结构化的程序设计思想,面向对象的程序模块间的关系更为简单,模块的独立性,安全性有了很好的保障。但是,很多学生在先学了结构化的程序设计之后,再来学习面向对象的一些概念就显得难以理解。封装,继承,多态,对象,这样的概念显得很抽象。目前,《面向对象编程技术》课程教学是老师单一授课后布置一些小习题让学生进行练习,这种教学模式过分的强调教师的主导作用,学生缺乏主观能动性,自主学习能力没有得到锻炼。加上刚刚接触面向对象这些抽象的概念,普遍有畏难和厌倦的情绪。为此,本文将以“任务驱动”为导向的课程教学及实践的方法对本门课程进行改革。

2 “任务驱动”教学

2.1 “任务驱动”模式

“任务驱动”教学模式是以任务为核心,通过分析该模式中的学生这一主体,设计合适的任务,引导学生去完成该任务,最后,针对完成的情况进行总结分析和评价。主要有以下几部分构成[2,4]:(1)学生能力的分析。“任务驱动”教学模式中学生是主体,是任务的主动实施者。对学生能力的分析,有利于教师设计出更符合学生特点及能力的任务,更好的提供帮助和指导,设计适合学生任务与学习资源。对学生的分析可以使用摸底考试、问卷调查、查看以往课程成绩和与之前的授课老师进行沟通等方法来实现。(2)学习任务的设计。“任务驱动”教学模式设计中的任务是学习的核心,以任务驱动学习,以任务帮助学生进行知识与能力的转化。设计合适的任务是教学设计模式的核心和重点,它为学生提供了明确目标、任务。设计任务时要考虑到任务所涵盖的知识点要合宜,任务的难度要符合学生的主体水平,任务的解决方式要是多样化的。(3)学习资源的设计。为了能帮助学生顺利的解决问题,老师需要为学生准备必要的预备知识。因此在任务的设计中,需要详细考虑到学生要完成该项任务需要哪些学习资源,可引导学生通过网络获得,或是学习查找开发软件自带的MSDN,以此来提高学生自主解决问题的能力。(4)分析总结。适时地总结可有效的帮助学生将所学知识系统化。总结应为知识体系串讲,简明扼要,避免限制学生思维。(5)评价。评价意味着根据某些标准对学习者进行鉴定或价值判断[5]。评价通常包括形成性评价和总结性评价。形成性评价是指在教学过程中,在学生完成任务的过程中及时进行检测和评价以便之后更好的完成。总结性评价是指在整个教学任务完成以后,学生任务完成以后对其进行相应的评价。在此教改模式中,形成性评价比总结性评价更有实际意义。

2.2 内容以及目标

“任务驱动”教学就是根据教学目标以及教学内容的需要,通过设置具体的案例,引导学生分析,参与讨论,以及表达的过程,从而提高学生分析问题解决问题的能力[3]。学生在对案例的解决过程中,不仅动手能力提高,同时,也加深了对那些抽象概念的理解。避免了那种“从概念到概念”的填鸭式教学。面向对象的编程技术这门课程的特点就是理论性和抽象性比较强,采用此方法就可以更好的完成教学工作,提高学生的能力。

2.3 主要解决的问题以及特色

引入此方法之前,课程教学一般做一些概念的解释,配合几个简单的例题,实验课程再让学生完成相应的题目。这样知识点相对零散,对于综合起来的题目,很多学生分析起来就显得力不从心。此次改革教学的探索中,我们的任务就只有一个,一个比较大的案例,通过不断学习新的概念,不断的来丰富我们的案例,将新学的概念一一融入,最后形成一个完整的任务案例。这样学生对面向对象的所有概念有了一个整体统筹的理解。例如,我们在整个过程中主要设置的任务是“某公司人员信息管理”,从最开始简单类的设计,到后面静态数据的添加,继承的设置,多态的设计,一一来丰富我們的这个例子!概念讲解结束了,我们的整个程序也差不多完成了,比起单一零碎的例题,这种方式更容易让学生理解全局的概念。

3 考核方式的改革

传统的考核方式都是最总结性的事后评价方式,如期末的笔试。此次的教改中我们将在学习过程中增加形成性评价,将任务的完成情况作为考核的一个标准,同时,将期末的笔试考核也进行了相应的改革,不是传统零碎概念的考查,而是一个一个具体任务的解读。

4 成果

笔者将此方法引入到教学方法中,对两届学生的成绩进行了比较,发现效果比较显著。2009级软件班的学生采用的是传统的教学方法,通过率78%,2010级软件班学生的通过率有了明显的提高,通过率达到了90%。在我们的课堂交流中,学生也普遍反映自己的动手能力有了很大的提高,在实践中对概念的理解更加透彻了。

5 结语

改革不但要有坚实的理论基础,还要在此基础上结合自身的特点来进行实践。本文中的“任务驱动”教学方式有着完整的理论支持,笔者再结合独立学院的学生的特点进行相应的实践。在这次教改中取得了良好的效果,当然在教学改革的这条道路我们还有很长的路要走。

参考文献

[1]郑莉,董渊,张瑞丰.C++语言程序设计[M].北京:清华大学出版社,2009.

[2]蔡韶华,詹泽慧,叶惠文.计算机基础课程的任务驱动的教学设计与实践现代教育技术[J].2008(12):119-122.

[3]杨晓燕.案例驱动的计算机网络课程教学改革探索[J].教改纵横,2007(18):91-92,95.

[4]何克抗.信息技术与课程整合深层次整合的理论与方法[J].中国信息界,2006(4):64-73.

4.面向对象课程设计任务 篇四

摘 要:针对计算机卓越班面向对象程序设计的教学实际,分析该课程在工程技术能力培养方面存在的一些突出性问题,围绕本校计算机科学与技术专业卓越工程师的培养方案,结合笔者在该课程的教学改革研究与实践经历,提出培养学生创新能力的教学改革思路和改革的具体措施,并说明教学效果。

关键词:卓越工程师教育培养计划;计算机卓越班;面向对象程序设计;创新驱动

文章编号:1672-5913(2017)05-0052-04

中图分类号:G642

0 引 言

“卓越工程师教育培养计划”是国家教育部贯彻落实《国家中长期教育改革和发展规划纲要(2010―2020年)》和《国家中长期人才发展规划纲要(2010―2020年)》的重大改革项目,旨在培养造就一大批创新能力强、适应经济社会发展需要的各类型高质量工程技术人才,为国家走新型工业化发展道路、建设创新型国家和人才强国战略服务,对促进高等教育面向社会需求培养人才、全面提高工程教育人才培养质量,具有十分重要的示范和引导作用[1-2]。现状分析

面向对象程序设计是一门实践性很强的课程,强调学生的实际动手能力。目前高校工科专业的面向对象程序设计课程,大多以一门面向对象程序设计语言的自身体系为脉络展开教学,注重学习编程语言的基本语句、语法、类和对象、继承和派生、多态性等有关面向对象程序设计的基本概念[3-4]。在此基础上,通过上机实验提高学生的动手实践能力。由于该教学模式不以解决实际问题为目的,因此学生的创新潜能得不到很好的挖掘。虽然一些高校计算机专业开设了多门面向对象程序设计课程,例如C++、Java、Karel[5]等,但重复性的教学导致学生无法通过这些课程的学习提高自己的创新能力。

面向对象程序设计的教学内容较多,导致很多教师在教学过程中缺乏系统性和综合性。虽然采取了理论知识讲解和实验环节相结合的手段,并且配合综合设计性案例的分析[6],但因为学时有限,往往只注重知识的机械性灌输,忽略学生思考和质疑的过程,学生很难消化这些枯燥无味、不易理解的零散知识,导致不少中等偏下的学生丧失学习兴趣,无法真正掌握面向对象编程的精髓和技巧。这样的教学无法激发学习主体的积极性和主动性,不利于学有余力的学生创新意识以及创新能力的培养与提高。此外,与传统计算机科学与技术专业相比,计算机科学与技术卓越工程师的培养方案发生了很大的变化。因此,有必要对计算机卓越班的面向对象程序设计课程进行教学改革。通过革除传统课程教学中的弊病,针对计算机卓越班的实际情况,优化教学方法和教学手段,为培养计算机工程技术人才打下良好的基础。改革具体措施

2.1 课程设置与考核方式的改革

传统的面向对象程序设计课程共54学时(2.5学分),其中,理论课36学时(2学分),实验课18学时(0.5学分)。考核方式基本以期末闭卷笔试为主(占总评成绩的70%),实验成?和平时成绩为辅(占总评成绩的30%)。闭卷笔试的考核方式具有较强的可操作性,但一般来说,该方式只能考查学生对理论知识的掌握情况,很难分辨出学生利用面向对象程序设计思想分析、解决问题的能力以及上机编程的实际操作能力。由于教师将考试的重点放在了知识点的掌握上,容易诱使学生在学习和备考时将精力集中在要点的记忆上,从而忽视程序设计方法的掌握和实际动手能力的提高,无法保证工程教育人才的培养质量。

针对以上问题,在课程设置上,为了强化实验课的教学效果,应将实验课与理论课分离出来,单独设置18学时的面向对象程序设计实验课程。此外,为了实现“卓越工程师教育培养计划”中培养创新能力强、适应经济社会发展需要的高质量工程技术人才的要求,学校新增36学时的面向对象程序设计课程设计课程。在考核方式上,面向对象程序设计的理论课程采用期末闭卷笔试为主的方式;面向对象程序设计实验课程采用上机机试为主的方式;面向对象程序设计课程设计课程的考核方式包括软件设计与编程、课程设计报告编写以及一对一答辩。

2.2 教学方法的改革

长期以来,传统的教学方法更注重人的社会性和共性培养,忽视培养人的个性和创造性,其结果是培养了大量统一模式的“标准件”[7]。针对计算机卓越班学生的工程能力和创新能力方面的培养目标,笔者提出一种适用于面向对象程序设计课程教学的创新驱动教学法。该教学法创造了学生主动参与、自主协作、探索创新的新型教学模式,充分发挥学生的主观能动性,最大限度地培养学生的创新思维能力和工程实践能力。

图1描绘了创新驱动教学法流程图。该流程图将面向对象程序设计课程的教学活动分成4个层次。其中,第1层次的教学从课堂讲练开始,通过简单实例的学习,让学生掌握基础知识。第2层次的教学贯穿于实验课的上机训练过程中,通过一些验证型实验和设计型实验强化学生的实践技能。在此过程中,随着学生理论知识的积累和实践技能的提升,激发了他们运用知识解决问题的动力。第3层次的教学从第13教学周开始,教师会给学生布置课程设计的题目和要求。通过6周左右的课程设计,学生获得了综合应用知识的能力,培养了解决一般问题的能力。通过3个层次的教学,可以完成教学大纲和培养方案的所有要求。第4层次的教学主要由计算机卓越班一些拔尖的学生牵头,鼓励他们带着班里的普通学生成立课题组,申报校级、市级乃至国家级的各类大学生创新计划项目。获得资助后,通过大学生创新计划项目的研究与开发,培养学生协同创新和解决实际问题的能力。在此过程中,每个大学生创新项目团队都会配备一位项目经验丰富的专业教师进行全程指导,帮助学生团队取得更大的成绩。为了确保指导教师的服务质量,根据学校的教师坐班答疑制度,要求具有高级职称的教师每周必须安排8个小时的校内坐班答疑时间,具有中级职称的教师每周必须安排12个小时的校内坐班答疑时间。指导教师克服远郊办学的困难,有了充足的时间为学生的课程答疑解惑,并且协助学生解决项目申报、项目实施以及项目答辩过程中遇到的各种问题。由于完成创新计划项目的主体是学生,教师只起到指导作用,这样,学生不再把学习当任务,而是根据项目的需求来学习,由被动地接受知识转变为主动地寻求知识,从而更好地发挥学习主动性,并且锻炼了自己的创造能力、团队合作能力以及与教师交流的能力。该层次教学的优势在于能够加快学生对知识的理解和融会贯通,更好地培养学生的学习兴趣和团队合作精神,提高学生创新思维和解决实际问题的能力。

2.3 教学手段的改革

面向对象程序设计课程教学手段的改革主要体现为多样化和全方位。

第一,高清视频录播系统的使用。学校在已经拥有的专业视频、音频技术人员和网络设备基础上,构建了一套基于校园网的高清视频录播系统,通过校园网和互联网实现远程教学,将传统教学活动与现代教学手段有机结合,提高教学水平。笔者通过主讲的面向对象程序设计课程获得学校视频课程建设的机会,将36学时的理论课进行了全程录播。在后台录制人员的帮助以及学生的配合下,确保了视频课程的教?W性、严谨性和观赏性。

第二,多媒体课件与板书的有机融合。概念定义、基础语法、图表类解释说明等用多媒体课件讲解,知识表示更形象、描述信息量更大,节约了板书时间。算法的推理与分析过程则采用板书方法,教师边写边讲,使学生思维和教师书写同步,更有利于学生深入理解重点和难点问题。

第三,实验环境真实性的保障。本课程课堂上所讲案例的所有代码都在真实的开发环境上运行,通过教师的引导,在师生交互过程中完成编码工作,调动了学生的积极性和学习兴趣,有利于学生对知识点的理解和实践能力的提高。本课程的上机实验环境主要由计算机工程与技术实验中心负责提供,一人一机,通过机房管理软件控制师生交互,教师可以在答疑过程中将任何一台机器作为教师机进行屏幕广播教学,为学生的实践学习提供了良好的环境。此外,计算机工程与技术实验中心还建有专业实验室,包括航运信息处理实验室、航运工程研究实验室、智能海事网络实验室、大学生创新基地、与甲骨文(中国)软件系统有限公司合作设立的ORACLE实验室等,这些专业实验室为大学生创新计划项目的实施提供了良好的条件。

第四,课程网络平台的建设。通过建设课程网络平台,从时间和空间上延伸了课堂教学。在网络平台上除提供教学基本文件外(教学大纲、教学日历),还及时上传了课件、例题、练习题、单元测试内容等教学资源。教学效果分析

创新驱动教学法与传统教学法在教学理念和实施方式方面有很大的区别。在实施创新驱动教学法的面向对象程序设计课程前后,笔者对上海海事大学计算机科学与技术专业2013级和2012级该课程的学习情况进行统计,列出了各自的学习效果情况。其中,2013级选择了采用创新教学法的计算机131卓越班,人数为31人。2012级选择了采用传统教学法的计算机121班,人数为37人。不同教学班级的教学效果对照见表1。其中,优秀率由总评成绩90分及以上学生的人数除以班级学生总数计算得出,良好率由总评成绩80分及以上学生的人数除以班级学生总数计算得出。

由表1可知,实施创新驱动教学法的计算机131卓越班优秀率和创新项目参与度大幅领先于采用传统教学法的计算机121班。由于计算机131卓越班的学生从计算机专业3个班级中优选而出,不能依据表1的数据简单得出创新驱动教学法的教学效果明显优于传统教学法的结论,还需要考虑生源质量因素对数据的影响。为了观察创新驱动教学法的实际教学效果,笔者将所有计算机131卓越班的学生还原到大学入学时初始分班的状态。然后,选择计算机131班的学生数据代表创新教学法的教学效果,计算机121班的数据代表传统教学法的教学效果。不同教学方法的教学效果对照见表2。

由表2可知,创新驱动教学法在优秀率、良好率以及创新项目参与度等指标上比传统教学法的教学效果更好。结 语

面向对象程序设计是计算机卓越班学生必修的一门专业基础课程,在整个专业的教学体系中具有十分重要的地位和作用。创新驱动教学法整合了各种教学资源,充分发挥了学生的主观能动性。实践证明,随着课程教学改革的不断深入,学生的创新能力得到不断提升,对“卓越工程师教育培养计划”的实施起到一定的推进作用。

参考文献:

5.面向对象程序设计教学大纲 篇五

【课程类别】专业限选 【编写日期】2010.3.30 【先修课程】C语言程序设计、计算机应用基础

【适用专业】通信工程

一、教学目的、任务

通过学习,使学生深刻理解和领会面向对象的基本思想和基本特征,掌握面向对象程序设计语言C++语言的基本概念、基本语法以及面向对象程序设计的基本方法;使学生养成面向对象的编程思维习惯。

二、课程教学的基本要求

1.理解面向对象的基本概念和使用面向对象技术进行程序设计的基本思想 2.能比较熟练地用C++语言进行一般面向对象的程序设计

3.初步掌握面向对象编程环境Visual C++的使用

三、教学内容和学时分配(2 + 5 + 14 + 9 + 12 + 7 + 6 + 5 = 60)第一章 面向对象程序设计概述 2 学时(课堂讲授学时2)主要内容:

1.什么是面向对象程序设计 2.对象与类 3.封装 4.继承性 5.多态性

6.面向对象程序设计的语言 教学要求:

了解什么是面向对象程序设计;掌握对象和类的基本概念;理解面向对象程序设计的基本特征。其它教学环节:

安排课外了解面向对象程序设计方面的基本概念。第二章 C++概述 5学时(课堂讲授学时2+课程实验学时3)主要内容:

1.C++的起源和特点 2.C++源程序的构成

3.C++在非面向对象方面的一些特性 教学要求:

cin和cout的使用;new和delete的运算符的使用;函数的重载;带缺省参数的函数;引用; VC++的使用。其它教学环节:

实验1: C++程序设计基础练习。实验目的和要求:

1.掌握C++程序的基本格式和规范,学会编写简单的C++程序。2.掌握C++程序结构的特点。

3.熟悉C++程序基本的输入输出操作。

4.掌握C++数据类型常量和变量以及修饰符的使用方法。5.熟悉作用域运算符的功能和基本使用方法。6.掌握C++内存的动态分配和释放方法。7.理解引用的概念,掌握引用的使用方法。

第三章 类和对象 14学时(课堂讲授学时8+课程实验学时6)主要内容:

1.类与对象的基本概念 2.构造函数与析构函数 3.对象数组与对象指针 4.向函数传递对象 5.静态成员 6.友元

7.类对象作为成员 8.常类型 教学要求:

类的声明;对象定义;对象的成员的访问。访问属性的理解和运用;构造函数和析构函数的定义;对象数组的定义和使用;this的指针的理解和使用;类的成员类型为其他类时如何理解和使用;静态成员的理解和运用。提供友元机制的目的;友元声明方法;提供常类型机制的目的;各种不同的常类型运作方式。其它教学环节:

实验2:类和对象。实验目的和要求:

1.掌握类、类的数据成员、类的成员函数的定义方式。2.理解类成员的访问控制方式。

3.掌握对象的定义和操作对象的方法。

4.理解构造函数和析构函数的定义与执行过程。5.掌握重载构造函数的方法。6.了解拷贝构造函数的方法。实验3:对象数组和对象指针。实验目的和要求:

1.掌握对象数组的定义和使用方法。

2.理解对象指针的概念,学会用指针引用对象。3.了解this指针的工作方式。

4.掌握静态数据成员和静态成员函数的基本使用方法。5.理解友元与友元函数的作用,掌握其使用方法。

第四章 派生类和继承 9学时(课堂讲授学时6+课程实验学时3)主要内容:

1.派生类的概念

2.派生类的构造函数和析构函数 3.基类成员的访问 4.多重继承 5.赋值兼容规则 教学要求:

基类和派生类的基本概念;继承成员的访问规则;派生类构造函数和析构函数的运行规则;多重继承的基本概念;多重继承中同名二义性如何消除;引入虚基类的目的;继承类和派生类之间相互赋值规则用。

其它教学环节:

实验4:派生类与继承。实验目的和要求:

1.理解类的继承的概念,能够定义和使用类的继承关系。2.掌握派生类的声明和定义方法。

3.掌握公有派生和私有派生的访问特性。4.学习虚基类在解决问题中的作用。

第五章 多态性 12学时(课堂讲授学时8+课程实验学时4)主要内容:

1.编译时的多态性与运行时的多态性 2.函数重载 3.运算符重载 4.类型转换 5.虚函数 教学要求:

多态的基本概念;实现运算符重载的方法(成员函数);实现运算符重载的方法(友元函数);静态联编和动态联编的基本概念;虚函数的作用;虚函数的运用。其它教学环节:

实验5:虚函数和多态性。实验目的和要求:

1.理解编译时的多态性和运行时的多态性。2.掌握运算符重载的基本方法。3.掌握虚函数的定义和使用方法。

第六章 模板 7学时(课堂讲授学时4+课程实验学时3)主要内容:

1.模板的概念

2.函数模板与模板函数 3.类模板和模板类 教学要求:

模板的基本概念;为什么要使用模板;函数模板和模板函数的基本概念;函数模板的声明和使用;类模板和模板类的基本概念。其它教学环节:

实验6:函数模板与类模板。实验目的和要求:

1.掌握函数模板及其声明方法。2.掌握模板函数及其生成方法。3.学习类模板的声明与使用方法。

第七章 C++的I/O流类库 6学时(课堂讲授学时3+课程实验学时3)主要内容:

1.C++建立类类库的目的 2.预定义类型的输入输出

3.用户自定义类型的输入和输出 教学要求:

掌握在各种情况下的<<和>>运算符的重载。其它教学环节:

实验7:I/O流类库。实验目的和要求:

1.掌握流及流类库的作用。

2.掌握流类库中常用的类及其成员函数的使用方法。3.掌握重载“<<”和“>>”的方法。

4.掌握控制输出宽度的函数width和setw。

5.掌握函数setosflags和resetiosflags设置和恢复对齐方式、精度、大小写等。

研究教学内容 5学时(课程讲解和讨论学时)

程序综合设计:按照面向对象程序开发的原则和方法,利用一个实例来讲解面向对象程序设计的整个过程,然后要求学生根据自己的开发经验进行分组讨论,从而帮助学生进一步理解和熟悉面向对象程序设计方法。

四、教学重点、难点及教学方法

重点:类和对象的基本概念;对象定义;对象的成员的访问。访问属性的理解和运用;构造函数和析构函数的定义;对象数组的定义和使用;this的指针的理解和使用。基类和派生类的基本概念;继承成员的访问规则;派生类构造函数和析构函数的运行规则。多态的基本概念;函数的重载。

难点:多重继承;虚函数;模板。

教学方法:课堂授课采用多媒体教学和分组讨论的方法,实验采用任务驱动方式。通过未来愿景描述和学以致用的方法来提高学生的学习兴趣,通过分组交流和师生积极互动的方式提高学生学习本门课程的学习能力。

五、考核方式及成绩评定方式:考试

六、教材及参考书目

推荐教材:

[1] 《C++面向对象程序设计》,陈维兴,林小茶,清华大学出版社,第2版,2004 参考书:

[1] 《C++面向对象程序设计习题解析与上机指导》,陈维兴,清华大学出版社,2003 [2] 《C++程序设计基础》,周霭如,电子工业出版社,2003 [3] 《C++语言程序设计》,郑莉,清华大学出版社,2005 修(制)订人: 审核人:

2010年 3 月30

6.面向对象课程设计任务 篇六

一、选择题

1.假定p所指对象的值为5,p+1所指对象的值为8,则执行“(*p)++;”语句后,p所指对象的值为()

A.5 B.9 C.6 D.8

2.下面关于对象的描述中,不正确的是()

A.对象是一种数据类型 B.对象可大可小

C.对象具有属性和行为两个要素 D.对象是一种客观存在3.面向对象的程序是()的组合.A.数据结构+算法 B.对象+方法

C.对象+消息 D.对象+算法

4.以下不属于面向对象的程序设计语言的是()

A.C# B.C++ C.Java D.C

5.下面关于构造函数的说法,不正确的是()

A.构造函数没有返回值 B.构造函数不能重载

C.构造函数名称一定要和类名一致 D.构造函数的参数可以缺省

6.下面有关内置函数说法不正确的是()

A.提高执行效率 B.增加目标代码长度

C.与带参宏定义效果一样 D.用于规模小且使用频繁场合7.以下不属于C++关键字的是()

A.mutable B.class C.endl D.static

8.下列关于类和对象的叙述中,错误的是()

A.可以用一个类定义多个对象 B.类比对象大,包含对象

C.类是对某一类对象的抽象 D.对象是类的具体实例

9.下面关于常变量的描述中,不正确的是()

A.用const定义常变量 B.指向常变量的指针即是常指针

C.常变量是不能改变值的变量 D.常成员函数不能修改数据成员

10.假定A为一个类,a为该类私有的数据成员,Get()为该类公有的函数成员,它返回a的值。现有如下语句A t,*p=&t;,则得到t对象中数据成员a的语句为()

A.p.Get();B.t.a;C.p->Get();D.t->a;

11.自减运算符的重载中,函数形参是int,意味着()

A.编译不通过 B.后置自减 C.前置自减 D.2个参数

12.下列语句中,不能定义一个常量的是()

A.#define double PI=3.1414926 B.const double PI=3.1415926;

C.#define PI 3.1415926 D.const static double PI=3.1415926;

13.如果一个类没有定义任何构造函数,下列描述正确的是()

A.该类也就不定义析构函数 B.编译器创建一个不带参数的构造函数

C.该类不能通过编译 D.编译器创建一个带参数的构造函数

14.对于语句 cout << a;,下列描述中不正确的是()

A.“cout”是一个输出流对象 B.该语句输出了a的值

C.“<< ”称作提取运算符 D.该语句需要头文件iostream

15.C++中,下面对结构体和类之间关系的描述中,正确的是()

A.类中的默认权限是私有的,而结构体中默认权限是公有的B.类有函数成员,而结构体没有

C.类有构造函数,而结构体没有

D.类的成员可以定义为私有权限,而结构体成员不能定义为私有权限

16.下面关于友元的说法,不正确的是()

A.友元函数可以是成员函数 B.友元类的函数均是友元函数

C.友元不具备传递性 D.友元的关系是双向的17.下面有关内置函数说法不正确的是()

A.提高执行效率 B.增加目标代码长度

C.与带参宏定义效果一样 D.用于规模小且使用频繁场合18.下面那个描述常成员函数的定义是正确的()

A.const int show()B.int const show()C.int show()const D.int show(const)

19.已有定义virtual int area()=0;下面关于该函数的解释中正确的是()

A.该函数是纯虚函数 B.该函数返回值为0

C.该函数通常在派生函数中声明 D.该函数的入口地址为0

20.下面哪个特性是C++相对于C所特有的()

A.使用了引用的定义 B.使用static关键字

C.使用const关键字 D.使用了指针的定义

21.下列关于C++中运算符重载的描述中,错误的是()

A.运算符重载可以对所有的运算符进行重载

B.重载的运算符,其运算对象可以是自定义的数据类型

C.运算符重载不能改变运算符的优先级

D.运算符的重载实质上是函数的重载

22.通过()方法可以在现有类基础上得到新的类。

A.引用 B.继承 C.包含 D.封装

23.关于赋值运算符,下面哪个说法不成立()

A.必须是类成员函数 B.不能被派生类继承;

C.不能进行运算符重载 D.编译器可以自动生成;

24.下面关于构造函数的说法,不正确的是()

A.构造函数不能重载 B.构造函数没有返回值

C.构造函数名称一定要和类名一致 D.构造函数不能做虚函数

25.下面属于一个C++程序头文件部分的是()

A.类的声明 B.类的实现 C.类的使用 D.类的编译

26.下面关于cin的说明中,不正确的是()

A.是一个对象 B.是一个关键字 C.用于输入 D.配合提取运算符使用

27.下面有关类的静态成员函数说法正确的是()

A.可以访问非静态成员;B.只能访问静态成员;

C.可以是对象的一部分;D.在定义时也要加上static;

28.自减运算符的重载中,函数形参是int,意味着()

A.编译不通过 B.后置自减

C.前置自减 D.2个参数

29.下面有关常成员函数不正确的说法是()

A.只能访问常数据成员 B.不能修改任何数据成员

C.可以访问任何数据成员 D.可以修改一般数据成员

30.对类的常数据成员进行初始化,正确的是()

A.在构造函数中赋值;B.利用公有接口函数对其赋值;

C.利用成员初始化表;D.无法初始化,默认为0;

31.派生类的私有函数成员不可以访问基类的()成员。

A.私有成员 B.公用成员 C.保护成员 D.任何成员

32.作为类的成员函数重载一个运算符时,如果参数表中有一个参数,通常情况下,说明该运算符有()个操作数

A.0 B.1 C.2 D.3

33.C++代码源文件的扩展名应为()

A.c B.cpp C.obj D.exe

34.若在类外可用x.p的形式访问派生类对象x的基类成员p,则p一定是()

A.私有继承的公用成员 B.公有继承的公用成员

C.保护继承的公用成员 D.公有继承的保护成员

35.C++语言相对于C语言的最根本的变化是()

A.增加了一些新的运算符 B.允许函数重载,并允许设置缺省参数

C.引进了类和对象的概念 D.输入输出使用流对象

36.下面属于一个C++程序头文件部分的是()

A.类的实现 B.类的声明 C.类的对象实例 D.类的编译

37.设置虚基类的目的是()

A.消除二义性 B.方便程序书写

C.减少目标代码体积 D.提高运行效率

38.静态成员函数一定没有()

A.返回值 B.返回类型 C.指针参数 D.*this

39.下面关于友元的说法,不正确的是()

A.友元函数可以是成员函数 B.友元类的函数均是友元函数

C.友元的关系是双向的 D.友元不具备传递性

40.下面有关类的静态成员函数说法正确的是()

A.可以访问非静态成员;B.只能访问静态成员;

C.可以是对象的一部分;D.在定义时也要加上static;

41.以下运算符不能进行运算符重载的是()

A.*= B.sizeof C.= D.&

42.在编译时,将所调用的函数代码嵌入到主调函数中,这种函数称为()

A.内置函数 B.子函数 C.成员函数 D.宏函数

43.下面有关常成员函数不正确的说法是()

A.只能访问常数据成员 B.不能修改任何数据成员

C.可以访问任何数据成员 D.不能访问一般数据成员

44.派生类的私有函数成员不可以访问基类的()成员。

A.私有成员 B.公用成员

C.保护成员 D.任何成员

45.下列关于函数模板与类模板的描述中,不正确的是()

A.函数模板的实例化是由编译程序在处理函数调用时自动完成B.类模板的实例化必须由程序员在程序中显式的指定

C.函数模板与类模板均可以显式调用

D.定义函数模板时可以使用多个类型参数,而类模板不可以

46.下列不属于类定义中的访问限定符的是()

A.private B.public

C.const D.protocted

47.以下说法中,不正确的是()

A.基类的析构函数不能被继承 B.基类的构造函数可以被继承;

C.静态成员函数只能访问静态数据成员;D.静态函数不能声明为虚函数;

48.若在类外可用x.p的形式访问派生类对象x的基类成员p,则p一定是()

A.私有继承的公用成员 B.公有继承的保护成员

C.保护继承的公用成员 D.公有继承的公用成员

49.下面与实现多态性无关的概念是()

A.虚基类 B.虚函数 C.抽象类 D.纯虚函数

50.假定p所指对象的值为6,p+1所指对象的值为8,则执行“(*p)++;”语句后,p所指对象的值为()

A.6 B.9 C.7 D.8

二、填空题

1.C++中,专门用于定义重载运算符的关键字是。

2.假定用户没有给一个名为BASE的类定义析构函数,则系统为其定义的默认析构函数写法为。

3.在C++中,继承间接共同基类时只保留一份成员的方法是。

4.继承关系可以是public、和。

5.常数据成员只能通过构造函数的 初始化。

6.派生类与其基类均有定义int b;则派生类中访问的b是在 中的定义。

7.常对象中的数据成员必须通过_________函数才可以访问。

8.对象将其大部分实现细节隐藏起来,这种机制称为。

9.通常可将含有纯虚函数的类称为,可用该类作为基类去建立派生类。

10.如果希望类的成员为该类所有对象所共享,可以使用关键字________来修饰。

11.在C++中,由继承而产生的新类,它的对象对同一个消息会作出不同的响应,这种特性被称为。

12.从系统实现角度看,C++中的动态多态性是通过 来实现的。

13.在C++中,用于动态分配内存的运算符是。

14.C++支持友元的目的是提高。

15.在类的定义中,如果定义为 函数要求派生类必须实现同名函数。

16.在类的定义中,通常用 函数对类的数据成员进行初始化。

17.如果希望类的成员为该类所有对象所共享,可以使用关键字__ __来修饰。

18.在C++中,用struct定义一个类时,数据成员和成员函数的默认访问权限是。

19.常对象中的私有数据成员必须通过 才可以访问。

20.重载函数在参数类型或 上不同,但函数名相同。派生类与其基类均有定义int b;则派生类中对b的使用是以 的定义为准。

21.已有定义const int a=5;定义一个常指针p指向该变量a的语句是:。

22.语句 cin >> x;中“>>”称为 运算符

23.一般的,系统提供的头文件只包括对成员函数的,而不包括对成员函数的定义。

24.要用对象名访问类成员,类成员的权限必须是 对象的概念中,有静态和动态两种特征,其中静态特征称为,可由数据表示,而动态特征称为行为,可由 表示。

25.在C++中,用 定义一个类型时,数据成员和成员函数的默认访问权限是公有的。

26.重载函数在参数个数或 上不同,但 相同。

27.语句 cin>>x;中“>>”称为 运算符。

28.只能通过构造函数的初始化表初始化。

29.在类定义时,如果在其某个成员后面加上const关键字,则这个成员称为。

30.假定有一个类B,是由类A保护继承而来,有一个类C由A类公开继承而来,根据基类成员在派生类中的访问属性,填写下表。

在A类的访问属性

在B类的访问属性

在C类的访问属性

私有



公有



保护



三、判断题

1.类模版是类的抽象,类是类模版的实例。

2.类的析构函数在删除对象时调用,并可以重载。

3.类中需要共享或共用的数据成员和成员函数均需要用关键字const声明。

4.常数据成员只能通过构造函数的初始化表初始化。

5.基类声明的虚函数再派生类不用再声明。

6.成员函数在类内定义会占用对象的存储空间。

7.面向对象程序设计通过类的继承机制解决了软件重用问题。;

8.抽象类定义的目的是用它作为基类去建立派生类。

9.构造函数有返回值,而析构函数没有返回值。

10.不出现类名,也可以直接定义对象。

11.面向对象的程序是对象和消息的组合,因此就不需要过程设计了。

12.对象的赋值和复制是同一个含义,均是由对象1得到对象2。

13.一般而言,先构造的先析构,后构造的后析构。

14.静态数据成员可以被一般成员函数访问。

15.静态成员函数可以直接访问其他成员函数。

16.指向对象的常指针变量就是指向常对象的指针变量。

17.构造函数不能声明为虚函数,而析构函数可以声明为虚函数。

18.C++允许这样定义函数int Init(int x=5, int y)。

19.多重继承出现的二义性可以用作用域限定的方法消除。

20.基类的构造函数和析构函数是不能被派生类继承的。

21.类所占空间为数据成员和成员函数所占空间之和。

22.类的析构函数可以是虚函数,也可以重载。

23.类是对象的抽象,对象是类的具体实例。

24.类的成员函数不能访问类的私有成员。

25.无论何种继承形式,派生类均不能直接访问基类的私有成员。

26.友元函数必须是一个类成员函数。

27.友元机制破坏了类的信息封装性。

28.实现流插入运算符重载可以使用类成员函数方式。

29.重载运算符函数不能有默认参数。

30.重载多态是一种运行时多态。

31.通过关键字friend可以声明友元。

32.理论上可以将一个运算符重载为执行任意操作。

33.抽象类一定含有至少一个纯虚函数。

四、简答题

1、如果一个派生类包含有成员对象,其构造函数执行顺序是怎样的?

2、什么是虚函数?如何定义虚函数。

3、什么是对象的赋值,它与对象的复制有什么不同?

4、什么叫虚基类,它的主要作用是什么?

5、什么是抽象类,它有什么特点。

6、什么是纯虚函数?应该如何声明?有什么意义?

7、派生类的成员函数如何访问基类的私有成员?

8、为什么要进行运算符重载?

9、面向对象程序设计有哪些基本特征?

10、已知有类Test,公用成员函数display();简要解释语句Test stu1;stu1.display();并指出语句中的“对象”、“方法”和“消息”。

11、什么是面向对象的程序设计?

12、什么是常对象,如何定义常对象,对其访问有什么规定?

13、构造一个派生类需要做哪些工作?

14、什么是对象的复制,它与对象的赋值有什么不同?

15、类模板有什么作用?如何声明一个类模板。

16、类的静态成员具有什么特点和作用?

17、什么是参数初始化表,有什么作用?

18、类的封装性表现在什么地方?

19、什么是内联函数,一般要求内联函数满足哪些条件?

20、什么是友元函数,它有什么优点和不足?

向对象程序设计》练习题库-2010版

一、选择题

1.假定p所指对象的值为5,p+1所指对象的值为8,则执行“(*p)++;”语句后,p所指对象的值为()

A.5 B.9 C.6 D.8

2.下面关于对象的描述中,不正确的是()

A.对象是一种数据类型 B.对象可大可小

C.对象具有属性和行为两个要素 D.对象是一种客观存在3.面向对象的程序是()的组合.A.数据结构+算法 B.对象+方法

C.对象+消息 D.对象+算法

4.以下不属于面向对象的程序设计语言的是()

A.C# B.C++ C.Java D.C

5.下面关于构造函数的说法,不正确的是()

A.构造函数没有返回值 B.构造函数不能重载

C.构造函数名称一定要和类名一致 D.构造函数的参数可以缺省

6.下面有关内置函数说法不正确的是()

A.提高执行效率 B.增加目标代码长度

C.与带参宏定义效果一样 D.用于规模小且使用频繁场合7.以下不属于C++关键字的是()

A.mutable B.class C.endl D.static

8.下列关于类和对象的叙述中,错误的是()

A.可以用一个类定义多个对象 B.类比对象大,包含对象

C.类是对某一类对象的抽象 D.对象是类的具体实例

9.下面关于常变量的描述中,不正确的是()

A.用const定义常变量 B.指向常变量的指针即是常指针

C.常变量是不能改变值的变量 D.常成员函数不能修改数据成员

10.假定A为一个类,a为该类私有的数据成员,Get()为该类公有的函数成员,它返回a的值。现有如下语句A t,*p=&t;,则得到t对象中数据成员a的语句为()

A.p.Get();B.t.a;C.p->Get();D.t->a;

11.自减运算符的重载中,函数形参是int,意味着()

A.编译不通过 B.后置自减 C.前置自减 D.2个参数

12.下列语句中,不能定义一个常量的是()

A.#define double PI=3.1414926 B.const double PI=3.1415926;

C.#define PI 3.1415926 D.const static double PI=3.1415926;

13.如果一个类没有定义任何构造函数,下列描述正确的是()

A.该类也就不定义析构函数 B.编译器创建一个不带参数的构造函数

C.该类不能通过编译 D.编译器创建一个带参数的构造函数

14.对于语句 cout << a;,下列描述中不正确的是()

A.“cout”是一个输出流对象 B.该语句输出了a的值

C.“<< ”称作提取运算符 D.该语句需要头文件iostream

15.C++中,下面对结构体和类之间关系的描述中,正确的是()

A.类中的默认权限是私有的,而结构体中默认权限是公有的B.类有函数成员,而结构体没有

C.类有构造函数,而结构体没有

D.类的成员可以定义为私有权限,而结构体成员不能定义为私有权限

16.下面关于友元的说法,不正确的是()

A.友元函数可以是成员函数 B.友元类的函数均是友元函数

C.友元不具备传递性 D.友元的关系是双向的17.下面有关内置函数说法不正确的是()

A.提高执行效率 B.增加目标代码长度

C.与带参宏定义效果一样 D.用于规模小且使用频繁场合18.下面那个描述常成员函数的定义是正确的()

A.const int show()B.int const show()C.int show()const D.int show(const)

19.已有定义virtual int area()=0;下面关于该函数的解释中正确的是()

A.该函数是纯虚函数 B.该函数返回值为0

C.该函数通常在派生函数中声明 D.该函数的入口地址为0

20.下面哪个特性是C++相对于C所特有的()

A.使用了引用的定义 B.使用static关键字

C.使用const关键字 D.使用了指针的定义

21.下列关于C++中运算符重载的描述中,错误的是()

A.运算符重载可以对所有的运算符进行重载

B.重载的运算符,其运算对象可以是自定义的数据类型

C.运算符重载不能改变运算符的优先级

D.运算符的重载实质上是函数的重载

22.通过()方法可以在现有类基础上得到新的类。

A.引用 B.继承 C.包含 D.封装

23.关于赋值运算符,下面哪个说法不成立()

A.必须是类成员函数 B.不能被派生类继承;

C.不能进行运算符重载 D.编译器可以自动生成;

24.下面关于构造函数的说法,不正确的是()

A.构造函数不能重载 B.构造函数没有返回值

C.构造函数名称一定要和类名一致 D.构造函数不能做虚函数

25.下面属于一个C++程序头文件部分的是()

A.类的声明 B.类的实现 C.类的使用 D.类的编译

26.下面关于cin的说明中,不正确的是()

A.是一个对象 B.是一个关键字 C.用于输入 D.配合提取运算符使用

27.下面有关类的静态成员函数说法正确的是()

A.可以访问非静态成员;B.只能访问静态成员;

C.可以是对象的一部分;D.在定义时也要加上static;

28.自减运算符的重载中,函数形参是int,意味着()

A.编译不通过 B.后置自减

C.前置自减 D.2个参数

29.下面有关常成员函数不正确的说法是()

A.只能访问常数据成员 B.不能修改任何数据成员

C.可以访问任何数据成员 D.可以修改一般数据成员

30.对类的常数据成员进行初始化,正确的是()

A.在构造函数中赋值;B.利用公有接口函数对其赋值;

C.利用成员初始化表;D.无法初始化,默认为0;

31.派生类的私有函数成员不可以访问基类的()成员。

A.私有成员 B.公用成员 C.保护成员 D.任何成员

32.作为类的成员函数重载一个运算符时,如果参数表中有一个参数,通常情况下,说明该运算符有()个操作数

A.0 B.1 C.2 D.3

33.C++代码源文件的扩展名应为()

A.c B.cpp C.obj D.exe

34.若在类外可用x.p的形式访问派生类对象x的基类成员p,则p一定是()

A.私有继承的公用成员 B.公有继承的公用成员

C.保护继承的公用成员 D.公有继承的保护成员

35.C++语言相对于C语言的最根本的变化是()

A.增加了一些新的运算符 B.允许函数重载,并允许设置缺省参数

C.引进了类和对象的概念 D.输入输出使用流对象

36.下面属于一个C++程序头文件部分的是()

A.类的实现 B.类的声明 C.类的对象实例 D.类的编译

37.设置虚基类的目的是()

A.消除二义性 B.方便程序书写

C.减少目标代码体积 D.提高运行效率

38.静态成员函数一定没有()

A.返回值 B.返回类型 C.指针参数 D.*this

39.下面关于友元的说法,不正确的是()

A.友元函数可以是成员函数 B.友元类的函数均是友元函数

C.友元的关系是双向的 D.友元不具备传递性

40.下面有关类的静态成员函数说法正确的是()

A.可以访问非静态成员;B.只能访问静态成员;

C.可以是对象的一部分;D.在定义时也要加上static;

41.以下运算符不能进行运算符重载的是()

A.*= B.sizeof C.= D.&

42.在编译时,将所调用的函数代码嵌入到主调函数中,这种函数称为()

A.内置函数 B.子函数 C.成员函数 D.宏函数

43.下面有关常成员函数不正确的说法是()

A.只能访问常数据成员 B.不能修改任何数据成员

C.可以访问任何数据成员 D.不能访问一般数据成员

44.派生类的私有函数成员不可以访问基类的()成员。

A.私有成员 B.公用成员

C.保护成员 D.任何成员

45.下列关于函数模板与类模板的描述中,不正确的是()

A.函数模板的实例化是由编译程序在处理函数调用时自动完成B.类模板的实例化必须由程序员在程序中显式的指定

C.函数模板与类模板均可以显式调用

D.定义函数模板时可以使用多个类型参数,而类模板不可以

46.下列不属于类定义中的访问限定符的是()

A.private B.public

C.const D.protocted

47.以下说法中,不正确的是()

A.基类的析构函数不能被继承 B.基类的构造函数可以被继承;

C.静态成员函数只能访问静态数据成员;D.静态函数不能声明为虚函数;

48.若在类外可用x.p的形式访问派生类对象x的基类成员p,则p一定是()

A.私有继承的公用成员 B.公有继承的保护成员

C.保护继承的公用成员 D.公有继承的公用成员

49.下面与实现多态性无关的概念是()

A.虚基类 B.虚函数 C.抽象类 D.纯虚函数

50.假定p所指对象的值为6,p+1所指对象的值为8,则执行“(*p)++;”语句后,p所指对象的值为()

A.6 B.9 C.7 D.8

二、填空题

1.C++中,专门用于定义重载运算符的关键字是。

2.假定用户没有给一个名为BASE的类定义析构函数,则系统为其定义的默认析构函数写法为。

3.在C++中,继承间接共同基类时只保留一份成员的方法是。

4.继承关系可以是public、和。

5.常数据成员只能通过构造函数的 初始化。

6.派生类与其基类均有定义int b;则派生类中访问的b是在 中的定义。

7.常对象中的数据成员必须通过_________函数才可以访问。

8.对象将其大部分实现细节隐藏起来,这种机制称为。

9.通常可将含有纯虚函数的类称为,可用该类作为基类去建立派生类。

10.如果希望类的成员为该类所有对象所共享,可以使用关键字________来修饰。

11.在C++中,由继承而产生的新类,它的对象对同一个消息会作出不同的响应,这种特性被称为。

12.从系统实现角度看,C++中的动态多态性是通过 来实现的。

13.在C++中,用于动态分配内存的运算符是。

14.C++支持友元的目的是提高。

15.在类的定义中,如果定义为 函数要求派生类必须实现同名函数。

16.在类的定义中,通常用 函数对类的数据成员进行初始化。

17.如果希望类的成员为该类所有对象所共享,可以使用关键字__ __来修饰。

18.在C++中,用struct定义一个类时,数据成员和成员函数的默认访问权限是。

19.常对象中的私有数据成员必须通过 才可以访问。

20.重载函数在参数类型或 上不同,但函数名相同。派生类与其基类均有定义int b;则派生类中对b的使用是以 的定义为准。

21.已有定义const int a=5;定义一个常指针p指向该变量a的语句是:。

22.语句 cin >> x;中“>>”称为 运算符

23.一般的,系统提供的头文件只包括对成员函数的,而不包括对成员函数的定义。

24.要用对象名访问类成员,类成员的权限必须是 对象的概念中,有静态和动态两种特征,其中静态特征称为,可由数据表示,而动态特征称为行为,可由 表示。

25.在C++中,用 定义一个类型时,数据成员和成员函数的默认访问权限是公有的。

26.重载函数在参数个数或 上不同,但 相同。

27.语句 cin>>x;中“>>”称为 运算符。

28.只能通过构造函数的初始化表初始化。

29.在类定义时,如果在其某个成员后面加上const关键字,则这个成员称为。

30.假定有一个类B,是由类A保护继承而来,有一个类C由A类公开继承而来,根据基类成员在派生类中的访问属性,填写下表。

在A类的访问属性

在B类的访问属性

在C类的访问属性

私有



公有



保护



三、判断题

1.类模版是类的抽象,类是类模版的实例。

2.类的析构函数在删除对象时调用,并可以重载。

3.类中需要共享或共用的数据成员和成员函数均需要用关键字const声明。

4.常数据成员只能通过构造函数的初始化表初始化。

5.基类声明的虚函数再派生类不用再声明。

6.成员函数在类内定义会占用对象的存储空间。

7.面向对象程序设计通过类的继承机制解决了软件重用问题。;

8.抽象类定义的目的是用它作为基类去建立派生类。

9.构造函数有返回值,而析构函数没有返回值。

10.不出现类名,也可以直接定义对象。

11.面向对象的程序是对象和消息的组合,因此就不需要过程设计了。

12.对象的赋值和复制是同一个含义,均是由对象1得到对象2。

13.一般而言,先构造的先析构,后构造的后析构。

14.静态数据成员可以被一般成员函数访问。

15.静态成员函数可以直接访问其他成员函数。

16.指向对象的常指针变量就是指向常对象的指针变量。

17.构造函数不能声明为虚函数,而析构函数可以声明为虚函数。

18.C++允许这样定义函数int Init(int x=5, int y)。

19.多重继承出现的二义性可以用作用域限定的方法消除。

20.基类的构造函数和析构函数是不能被派生类继承的。

21.类所占空间为数据成员和成员函数所占空间之和。

22.类的析构函数可以是虚函数,也可以重载。

23.类是对象的抽象,对象是类的具体实例。

24.类的成员函数不能访问类的私有成员。

25.无论何种继承形式,派生类均不能直接访问基类的私有成员。

26.友元函数必须是一个类成员函数。

27.友元机制破坏了类的信息封装性。

28.实现流插入运算符重载可以使用类成员函数方式。

29.重载运算符函数不能有默认参数。

30.重载多态是一种运行时多态。

31.通过关键字friend可以声明友元。

32.理论上可以将一个运算符重载为执行任意操作。

33.抽象类一定含有至少一个纯虚函数。

四、简答题

1、如果一个派生类包含有成员对象,其构造函数执行顺序是怎样的?

2、什么是虚函数?如何定义虚函数。

3、什么是对象的赋值,它与对象的复制有什么不同?

4、什么叫虚基类,它的主要作用是什么?

5、什么是抽象类,它有什么特点。

6、什么是纯虚函数?应该如何声明?有什么意义?

7、派生类的成员函数如何访问基类的私有成员?

8、为什么要进行运算符重载?

9、面向对象程序设计有哪些基本特征?

10、已知有类Test,公用成员函数display();简要解释语句Test stu1;stu1.display();并指出语句中的“对象”、“方法”和“消息”。

11、什么是面向对象的程序设计?

12、什么是常对象,如何定义常对象,对其访问有什么规定?

13、构造一个派生类需要做哪些工作?

14、什么是对象的复制,它与对象的赋值有什么不同?

15、类模板有什么作用?如何声明一个类模板。

16、类的静态成员具有什么特点和作用?

17、什么是参数初始化表,有什么作用?

18、类的封装性表现在什么地方?

19、什么是内联函数,一般要求内联函数满足哪些条件?

7.面向对象课程设计任务 篇七

随着全球经济一体化进程的推进, 国际化已成为全球高等教育发展的趋势, 我国教育部曾多次下发文件要求全国各高校积极推广和推进双语教学工作, 培养具有国际交流和竞争能力的外向型人才。

随着改革的深入, 我校也积极鼓励各院系开展双语教学工作。相对其它领域, 计算机属于高新技术领域, 许多最新的思想、成果和技术资料都是来自于欧美等国家, 专业英文应用能力低下已经成为工制约从业者进一步发展的巨大障碍。在有些企业, 特别是外资、合资企业, 毕业后英语能力强的学生的知识更新快, 薪水比具有同等专业能力、但英文水平差的学生要高许多。因此, 作为专业能力, 有必要在教学中渗透双语教学, 培养出更符合国际社会需要的计算机专业人才。程序设计是计算机专业学生应具备的基本能力, 为了提高教学水平, 我们在面向对象程序设计课程中开展了双语教学活动。

2、面向对象程序设计语言的特点

面向对象程序设计语言具有大量的类, 每个类有众多的属性、方法和事件, 类与类之间还可能具有继承关系, 这些都加大了学习这门课的难度。对面向对象程序设计语言的掌握, 不是短期内可以达到的, 在授课一个学期下来, 我们只能把面向对象的思想和课程学习的方法传授给学生, 学生需要在学习和将来的工作中不断地探索, 逐渐掌握强大的类库。同时为了使语言的功能更强大, 开发厂商对类也在不断地更新, 从业者需要不断地汲取新的知识, 在学习和工作的过程中, 不可避免地要接触英文文档。在面向对象程序设计语言课程的教学过程中, 我们深深感到, 英文应用能力的低下, 制约了学生的自学和探索能力。我们希望通过实施双语教学, 增强学生阅读专业英文技术文档的能力并具备一定的英文交流水平, 增强学生对新知识的自学、探索能力。

3、面向对象程序设计语言课程实施双语教学的实践及思考

3.1 双语课程的确定

由于是初次进行双语教学的实践, 经过考查, 我们认为, 一开始最好选择学生易理解的、而且在学习过程中非常有开设双语教学必要性的课程, 让学生深刻认识到必须同时掌握好外语和专业知识才能做个好的计算机工作者, 增加学习主动性;课程开设的时机确定为高年级, 此时学生的英语能力比低年级时有很大提高, 专业知识也有了大量的储备, 为顺利实施双语教学提供了基本的保证;由于是首次开设双语教学, 经验不足, 确定首先选择选修课, 这样如果效果不好, 也不会影响学生考研, 以后随着经验的累积, 逐渐开设其它课程。

经过分析和比较, 我们认为可以把在高年级开设的《java语言程序设计》、《VC++》课程开设为双语教学课程, 最终决定首先在《java语言程序设计》课程开设双语教学。由于在低年级已经学习过高级语言程序设计, 并且相比较而言, java语言要简单一些, 开设双语教学不会给学生太大的压力。同时, 英语应用能力在java的学习和工作中都有重要的作用:在实际开发和应用中, 往往需要学生或者开发者自己去查技术文档, 而现有的技术文档都是英文文档。如果用汉语教学, 其中的专业术语和整篇的专业英文, 会使学生看到就觉得吃力、从而产生畏难情绪, 丧失了学习的兴趣;而如果不看文档, 就不能够真正地把语言学好、用好。如果用翻译软件翻译技术文档, 它的意思就会和英文表达的本意去之甚远, 甚至风马牛不相及, 不利于学生的学习, 学生在学习中有挫折感, 容易失去信心。通过对该课程开展双语教学, 就可以在课程中让学生很自然地掌握和理解常用的术语, 技术文档的书写、查看方法, 从而学生在学习过程中查资料的时候, 能够较快地看懂文档, 从而提高学习的积极性和学习兴趣, 反过来又可以促进课堂的授课效果, 起到事半功倍的效果。

3.2 科学选择原版教材

外文教材是双语教学的最基本条件, 教材的选取的原则是实用性强、形式生动、能够体现学科的经典内容和发展的最新内容, 最好是国外知名大学相关课程所用的优秀国外原版或影印版教材, 与国际接轨, 另外还要充分考虑学生的学科基础水平与外语接受能力。另外, 为弥补学生英文能力的不足, 在外文教材之外, 我们还指定了两本中文参考书籍。

3.3 合理分配英语、中文授课比例

遵循循序渐进的原则, 针对我校教师对外交流较少, 教师的英语口语水平有待提高, 学生的英文听说水平也普遍较差, 我们选择过渡型的授课方式, 采用英文教材、英文ppt讲稿、英语试卷, 以中文讲解为主。前半部分, 课程开始的介绍、课程中的术语、最后总结用英语, 其它地方用中文;到课程的后半部分随着学生专业能力和英语能力的提高, 逐步增加英语授课的比例, 细节、重点、难点部分用中文为主讲解, 较浅显的内容用英文讲解为主, 这样教师和学生都能够收放自如, 减少学生的抵触心理。

3.4 采用案例式教学

面向对象程序设计是一门实践性很强的专业, 采用案例式教学方式, 有利于机双语教学的开展, 这也是典型的西方教育方法。学生在上课之前就知道课堂要解决的问题和要完成的目标, 在教师的引导下一步一步地解决问题, 可以培养学生的创新能力、发散思维和创造思维能力。选编案例时我们选取高质量的案例, 兼顾案例的典型性和启发性。

3.5 充分利用软件的英文帮助功能、网络资源

学习计算机离不开各种软件, 软件的帮助文档、软件公司发布的网络资源是该软件使用过程中最权威的参考资料。虽然现在的很多计算机软件已经汉化了, 但大多数软件的帮助文档仍然是英文的, 这就对学生的英文能力和专业能力提出了很高的要求。在讲课的过程中, 充分利用软件的帮助功能, 在介绍某个功能的时候直接把帮助的页面调出来, 给学生讲解, 学生会更充分地认识到英文对计算机专业的必要性和重要性, 从而坚定学生学好通过掌握好英语来促进专业学习的信心。比如介绍一个类的时候, 可以把该类的帮助文档打开, 那么关于该类的所有的属性和方法会列出来, 通过查看名字可以大概猜测出来属性或方法的作用, 如果打开方法相应的链接, 就可以展开相应的帮助页面, 那么每个方法的作用、使用方法都会一清二楚地呈现给使用者。学生就会觉得学习起来有帮助可以参考, 逐步打消畏难情绪。在教学的过程中, 教师可以有意识地在课堂上查看需要的、而教材上又没有讲或者讲得不清楚的地方, 让学生对帮助文档的强大作用有深刻的认识, 并在使用的过程中潜移默化地提高阅读专业英文文档的能力。

3.6 开发形式活泼的多媒体课件

多媒体课件可以融入文字、声音、图像、动画等多种媒体, 使授课形式更直观活泼、生动。我们一方面收集资料, 充分利用多媒体丰富多彩的表现形式, 编制了活泼生动的多媒体课件, 另一方面在讲学过程中注意控制节奏和信息量防止学生疲劳, 充分利用多媒体的优点, 克服多媒体教学课堂环境的缺点, 提高课堂教学效果。

3.7 通过考核、大作业和讨论加强对学生的管理

课程考核可以督促学生对知识的掌握, 也便于教师掌握学生的学习情况, 及时调整教学方法。根据双语教学的特点, 我们对学生的考核综合期末考试和平常作业成绩、阶段考核的方式评定, 并且平时作业和阶段考核要占较高的比例, 把对学生的监督和引导工作做在日常的学习生活中。作业要求学生50%用英文形式完成, 锻炼学生英文写作科技短文的能力;并将学生分组, 阶段性地给学生布置大作业, 作业内容注重学生能力的培养, 要求学生在运用课堂知识的基础上, 必须通过查阅资料、实验、小组讨论等方法获取作业中所需要的资料, 大作业完成后, 开展展示课, 由小组代表上讲台用英语讲述作业, 对作业中的问题全班同学展开谈论。考试和阶段考核体现一定比例的外语应用能力。学期末, 依据学生完成作业的情况、阶段考核情况、期末的考试情况综合评定给出最终成绩。

3.8 双语教学网站的建设

为了提高教学效果和学生自学能力, 除了课堂授课外, 我们准备建设专门的学习网站, 把与课程有关的资料收集整理后在网上发布。在网站中, 增加国外知名大学和国际知名计算机公司网站的链接, 使学生能够紧跟世界最先进的计算机发展的步伐, 拓展思维。发布论坛, 便于师生交流。为了提高听说能力, 还在网站中放置英语音、视频资料或其链接, 使学生的计算机英语能力获得迅速的提升, 为双语教学向纵深发展创造条件。

3.9 教师能力的不断提升

高质量的师资, 才能培养出优秀的人才。教师英文能力和专业能力的高低是双语教学成败的基本条件。教师水平的提升, 一方面需要学校对双语教学的高度重视和大力支持, 加强对教师双语教学技能的培训, 另一方面教师自身也需要不断在专业领域提升自己。

3.1 0 改进基础英语教学, 营造浓厚的英语学习氛围

双语教学中最重要的因素是学生的外语应用能力低下, 所以学校一方面要改进基础英语教学, 在外语教学中加强外语应用方面的教学与训练;另一方面可以在学校或者系里开展英语的竞赛、表演活动、聘请外教、鼓励学生参加英语角等一系列活动培养学生的英语学习兴趣, 提高英语能力, 为推进双语教学奠定坚实的基础。

4、总结

开展双语教学对教师和学生来讲都是一种挑战, 教学效果表明, 学生的外语应用能力有了很大提高, 尤其是查阅英语资料的能力。要提高双语教学的效果, 还需要学校的大力支持、教师、学生的共同努力, 以培养出更高素质的学生。

摘要:计算机专业的面向对象程序设计语言课程中, 存在大量的类, 每个类有众多的属性、方法, 难度在于大量的类不好掌握。本文讨论了在面向对象程序设计语言课程教学中通过实施双语教学, 提高学生的学习主动性和积极性, 改进教学效果的手段和方法。

关键词:双语教学,面向对象程序设计,案例教学

参考文献

[1].Kenji Hakuta and Eugene E.Garcia, Bilingualism and Education, Febru-ary 1989 American Psychologist, Vol.44, No.2

[2].任向民.如何在高校开展计算机课程的双语教学.北京大学学报, 2007, (5) .

[3].张铭等.关于计算机专业"双语教学"的调查报告.《计算机教育》, 2004, (6) .

[4].张素群, 对我国大学双语教学的几点思考.药学教育, 2006年22卷2期

8.面向对象课程设计任务 篇八

【关键词】面向对象 程序设计 发展史 UML

1 面向对象特征概述

面向对象设计是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,是建立在“对象”概念基础上的方法学。对象是由数据和操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。面向对象程序设计具有抽象性、封装性、继承性和多态性等特征。

抽象:指从事物中舍弃个别的、非本质的特征,而抽取共同的、本质特征的思维方式。

封装:将数据和代码捆绑到一起,避免了外界的干扰和不确定性。对象的某些数据和代码可以是私有的,不能被外界访问,以此实现对数据和代码不同级别的访问权限。

继承:让某个类型的对象获得另一个类型的对象的特征。通过继承可以实现代码的重用:从已存在的类派生出的一个新类将自动具有原来那个类的特性,同时,它还可以拥有自己的新特性。

多态:指一般类和特殊类可以有相同格式的属性或操作,但这些属性或操作具有不同的含义,即具有不同的数据类型或表现出不同的行为。

2 面向对象设计方法发展历史

在这里把面向对象方法的发展分为三个阶段:雏形阶段、完善阶段和繁荣阶段。

(一)雏形阶段

1967年挪威计算中心的Kisten Nygaard和Ole Johan Dahl开发了Simula67语言,首先引入了类的概念和继承机制,它是面向对象的先驱。1972年Palo Alno研究中心(PARC)发布了Smalltalk-72,其中正式使用了“面向对象”这个术语。Smalltakl的问世标志着面向对象程序设计方法的正式形成。

可以说出现了面向对象语言之后,面向对象思想才得到了迅速的发展。过去的几十年中,程序设计语言对抽象机制的支持程度不断提高:从机器语言到汇编语言,到高级语言,直到面向对象语言。汇编语言出现后,程序员就避免了直接使用0-1,而是利用符号来表示机器指令,从而更方便地编写程序;当程序规模继续增长的时候,出现了Fortran、C、Pascal等高级语言,这些高级语言使得编写复杂的程序变得容易,程序员们可以更好地对付日益增加的复杂性。

(二)完善阶段

PARC先后发布了Smalltalk-72、76和78等版本,直至1981年推出该语言完善的版本Smalltalk-80。Smalltalk-80的问世被认为是面向对象语言发展史上最重要的里程碑。迄今绝大部分面向对象的基本概念及其支持机制在Smalltalk-80中都已具备。它是第一个完善的、能够实际应用的面向对象语言。但是随后的Smalltalk-80的应用尚不够广泛,其原因是:

追求纯OO的宗旨使得许多软件开发人员感到不便。

一种新的软件开发方法被广泛地接受需要一定的时间。

针对该语言的商品化软件开发工作到1987年才开始进行。

(三)繁荣阶段

从20世纪80年代中期到90年代,是面向對象语言走向繁荣的阶段。其主要表现是大批比较实用的面向对象编程语言的涌现,例如C++、Objective-C、Object Pascal、CLOS、Eiffel和Actor等。这些面向对象的编程语言分为纯OO型语言和混合型OO语言。混合型语言是在传统的过程式语言基础上增加了OO语言成分形成的,在实用性方面具有更大的优势。此时的纯OO型语言也比较重视实用性。现在,在面向对象编程方面,普遍采用语言、类库和可视化编程环境相结合的方式,如Visual C++、JBuilder和Delphi等。面向对象方法也从编程发展到设计、分析,进而发展到整个软件生命周期。

到20世纪90年代,面向对象的分析与设计方法已多达数十种,这些方法都各有所长。目前,统一建模语言已经成为世界性的建模语言,适用于多种开发方法。把UML作为面向对象的建模语言,不但在软件产业界获得了普遍支持,在学术界影响也很大。在面向对象的过程指导方面,目前还没有国际规范发布。当前较为流行的用于面向对象软件开发的过程指导有“统一软件开发过程”(RUP)和国内的青鸟面向对象软件开发过程指导等。

3 面向对象设计方法应用现状

当前,面向对象方法几乎覆盖了计算机软件领域的所有分支。例如,已经出现了面向对象的编程语言、面向对象的分析、面向对象的设计、面向对象的测试、面向对象的维护、面向对象的图形用户界面、面向对象的数据库、面向对象的数据结构、面向对象的智能程序设计、面向对象的软件开发环境和面向对象的体系结构等。此外,许多新领域都以面向对象理论为基础或作为 主要技术,如面向对象的软件体系结构、领域工程、智能代理、基于构件的软件工程和面向服务的软件开发等。

4 结语

计算机软件技术的发展日新月异,在很短的时间内即涌现出了大量的软件开发工具并迅速地更新换代,给编程人员进行程序设计带来了极大的方便。在不久的将来相信面向对象程序设计技术必将应用到更多的程序中。

【参考文献】

[1] 麻志毅,著.面向对象分析与设计.机械工业出版社,2013,2.

上一篇:医疗卫生机构论文下一篇:小学一年级数学下册