面向对象编程技能在Java教学中的培养

2022-12-02

计算机专业作为实践性很强的一个专业, 良好的动手能力不仅是未来职位竞争的一个重要砝码, 也是社会对人才需求的基本要求。在Java教学内容中涉及到了面向对象的概念和特点, 但是如何结合Java教学内容找出面向对象技能培养的结合点和突破口则是双方面升华的关键。本文结合在Java教学过程中的体会, 从教学和实践两方面, 提出如何在Java的教学中培养学生面向对象的编程思想。

1 面向对象编程思想的培养

Java教学的目的, 一方面使面向对象的编程技能得到训练, 另一方面掌握Java的编程方法, 而在教学内容和方法上, 要把握两者之间的渗透性和相互作用性。

1.1 重视学生对面向对象特征的理解

理解面向对象的基本概念和特征, 然后严格遵循面向对象的设计思想来进行编程训练。在面向对象的设计方法中, 对象、消息、方法、类是其基本概念, 封装性、继承性和多态性是其基本特征。在对基本特征理解的基础上, 配合图示方式来体现这些概念和关系的直观表达, 使学生首先牢固掌握好面向对象的概念和特征, 为发挥其编程指导性作用打下基础。概念的理解和图示的配合, 从面向对象设计的优点出发, 引导程序设计思路, 可重用性使我们在应用程序中大量采用成熟的类库, 从而缩短开发时间。继承和封装性使我们要分析直接组成问题区域的事物以及这些事物间相互联系, 易于程序的维护、更新和升级。

针对上述的各面向对象的主要原则, 我们结合实例与学生共同讨论。同时为了进一步加强学生的实际设计和沟通能力, 我们以通用的U M L图作为主要的设计工具, 使得师生之间、同学之间使用标准的图形化工具进行交流。

1.2 注重面向对象编程思想的培养

加强对面向对象的编程思想培养, 才能总体把握和运用Java这一语言工具。学生在刚开始使用Java编写程序时很难从面向过程的程序设计的思想转换到面向对象的思想。在Java中, 需要以类为基本单位来进行编写程序, 通过类中的方法调用来实现整个程序的功能。例如:设计一个时钟。学生看到这个题目, 首先想到的是这个题目需要哪些数据类型?题目的算法如何?这种思路是典型的面向过程的程序设计思想, 按照面向对象的程序设计思想, 应做如下设计:首先从时钟的功能角度出发, 该类应具备获取系统时间的值、充当计时器、为计时器清零等方法。类的框架写后, 下一步是如何实现Clock类三个方法里的具体代码了, 此时才去考虑具体的实现细节, 从这个例子中看到, 传统的面向过程的编程是符合机器运行指令的流程的话, 而面向对象的程序设计符合现实生活中解决问题的思维过程。按照现实生活中习惯的思维方式, 从问题出发, 把解决问题的思维方式逐步转变成计算机能够理解的方式的过程。它是基于解决问题的设计, 而不是基于具体编程技术的设计。只封装解决问题的业务逻辑, 对代码实现的细节是在业务逻辑编码实现阶段才去考虑的问题, 应集中精力分析业务逻辑和业务流程, 思考如何去描述和实现软件的业务, 不要一开始就考虑程序代码的实现, 应该抛开具体编程语言的束缚。首先把业务逻辑抽象出来, 而这个抽象的过程是自上而下的, 符合人类的思维习惯, 即将问题的主要方面抽象成为一个简单的框架, 集中精力解决主要矛盾, 然后在解决问题的过程中, 再去解决细节问题和实现问题。一旦习惯了这一点, 学生就会不知不觉的运用面向对象的思维方法来设计和编写程序了。

1.3 不可忽视对Java基本类库的学习

Java程序设计就是定义类的过程, 但是Java编程时还需要用到大量的系统定义好的类, 即Java基本类库中的类。类库是Java语言的重要组成部分, 它提供了多个包, 每个包中都有若干个具有特定功能和相互关系的类和接口, 可以提供开发者快捷方便地开发应用程序。

我们可以把经常应用的串String类作为突破点, 提高学生对概念的理解和类方法的正确使用。如C语言中, 用copy和substr函数实现子字符串的获取, 而在面向对象设计中则以类的方式提供, 对字符串对象进行了封装, 通过Java API文档而了解和应用String类中的方法变得简易和轻松, 我们把它作为成熟的类, 在任何应用程序中都可以通过创建String对象而实现对字符串的相关操作, 至于中间的实现细节由类String进行了封装, 我们只关心如何正确使用该类中的方法而不关心方法的内部实现过程。通过String类的学习和比较, 使学生对类封装的实质、类封装的作用和意义、类的正确引用都有一个清晰的认识, 对后边的学习起到抛砖引玉的作用。如线程、异常、输入输出、网络编程等都是以掌握这些类的作用和技术应用为目的的, 我们都可以应用系统提供的类而完成自己的任务, 以缩短开发周期, 必要时我们还可以通过继承等方法建立自己的类库等, 便于扩充自己的功能类。

1.4 用面向对象的思维方法指导Java程序的开发

类和继承是适应人们一般思维方式的描述范式, 方法是允许作用于该类对象上的各种操作, 这种类、对象、消息和方法的程序设计范式的基本点在于对象的封装性。在采用面向对象的方法解决问题时, 要遵循的基本原则是:按照人们通常的思维方式建立问题区域的模型, 设计尽可能自然地表现求解方法的软件。为此不仅要建立直接表现组成问题区域的事物以及这些事物间相互联系的概念, 还必须建立适应人们一般思维的方式的描述范式。

由于Java开发环境JDK的优势, 通过面向对象概念、关系在Java中的渗透学习, 使面向对象的含义和应用通过Java的学习而有更深一层的理解, 理论和应用相辅相成, 理论指导应用, 在Java类应用和程序设计中获取编程经验, 并通过综合训练、课程设计等实训环节, 发挥面向对象编程思想的指导作用, 掌握Java API类的高级应用技术、锻炼学生综合编程的能力。当然Java只是面向对象编程技术涉及的课程之一, 理论是基础, 应用是目的, 在体系化的教学内容设置基础上, 通过相关课程知识的融合和对实际问题的系统设计而使学生的综合实践能力得到培养。

2 结语

通过几个学期的改革实践, “Java语言程序设计”这门课程取得了良好的教学效果, 同学习惯面向对象思维方式, 编程技能有很大提高, 教学质量得到了一定的保证。

摘要:本文结合Java语言的教学内容, 从面向对象编程技术的概念、特征以及面向对象的程序设计方法出发, 以Java语言的优势、教学内容的结合、类库的学习等方面探讨了如何在Java教学过程中培养面向对象的编程技能。

关键词:Java,面向对象,编程技能

参考文献

[1] 王伦津.Java语言互动式教学模式的探索[J].宁夏工程技术, 2005.

[2] 耿祥义.Java2实用教程[M] (第三版) .清华大学出版社, 2006, 10.

[3] 蔡翠平.Java程序设计[M].北方交通大学出版社, 清华大学出版社.2006, 05.

上一篇:浅析EPCM模式在项目建设管理中的不足下一篇:浅谈电子技术课的一体化教学探索