Java教学之探索-教育文档_第1页
Java教学之探索-教育文档_第2页
Java教学之探索-教育文档_第3页
Java教学之探索-教育文档_第4页
Java教学之探索-教育文档_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java 教学之探索The Exploration of Teaching JavaFENG Ying-ling(School of Science, Nan-tong University, Nantong 226009, China):The main purposes of setting up the course of Java programming is to deepen the study of the computer science and expand the explorement opportunities At the same time.In the cours

2、e of study for this purpose, we shoud adjust the teaching contents and teaching methods according to the social needs to this kind of talents.Java 语言作为一种纯面向对象的语言,实现了编程人员多 年来追求的境界:程序的可扩展性、可复用性及可维护性 ,这 使得JAVA语言的流行是必然的。当前的编程及开发人才中,Java 程序员的需求量大约占有 60%的市场空间。 Java 中分成三部分, JavaSE 是基础,JavaME适用于移动设备,特别是近两年来

3、 Android 系统的盛行,更加扩大了 Java 语言的应用范围。而 JavaEE企业级应用,更是学习的重点及难点所在。因为现在的 市场需求量大,所以有一些非计算机专业也选择开设了 Java程序设计的相关课程,目的是扩大学生的就业面。这样,我们在教学过程中, 就需要适当的调整教学内容, 教学手段也应更着 重于提高学生的动手能力, 这样才能让他们面对企业面试时, 有 一个程序员应有的状态。而 Java 语言在学习过程中,也是枯燥 无味的, 一些核心的内容也是比较难以理解。 本文将讨论教学对 象是非计算机专业的学生,在课时少、教学内容多、学生的计算 机基础薄弱等情况下, 如何教学才能达到比较满意

4、的效果?我们 可以适当选择教学内容及实践环节, 对各知识点, 用相应的小的 例程来讲解, 而教学环节的最后, 用一个综合性的项目来总结所 学知识,即用项目驱动法 提高学生实际编程能力。1 教学内容及教学重点如果我们现在的教学总学时为 72 课时,实验课时为 24课时, 那我们可以将教学内容安排如表 1 所示。表1 在这些章节中,并没有加入 Swing 及 Applet ,因为现在应 用的不多,所以没有完全安照一般的教材中的内容去讲这两部 分。当然,如果这十章的内容只是按部就班的讲授, 课时是不够 的。因为 Java 课程中需要承载的知识实在是不少,比如:除了 JavaSE这部分的基础知识之处,

5、还要学会简单数据库的创建, 还要会用简单的SQL语句访问数据库,等等。而单是JavaSE中的多线程、网络通信等内容对学生来说就已经比较难以理解了。 这样一个大面积的知识量,容易分散了学习的重点和学习精力, 难以对这门课程有一个比较好的概念, 所以我们在这些章节的课 时安排上,当然也要做一些调整。我们也知道,每一门语言的学 习过程中, 有一些知识是可以边学边用, 甚至是用到时再查阅相 应 API 文档的, 所以有的知识可以先提及, 告诉学生如果忘记可 以在哪儿去查到, 这样就可以大大减少学生死记硬背所花的时间 了。比如第二章 Java 语言基础部分中,各种基本数据类型 的长度就不用死记, 可以在

6、需要时查书即可; 基本语法部分也与 C+中类似,所以可以略作复习;但这一章中提到实参与形参间 的“值”传递, 就必须将传递基本类型与引用类型时的不同之处 讲述清楚,因为有的学生可能在学 C+寸也没有完全理解这一点, 这是后面对象的创建、 父类引用指向子类对象中产生的对象转型 及多态的基础,务必让学生充分理解。而对于第三章面向对象的核心技术及第四章接口, 这两部分 必须花比较多的时间去讲解,因为这两章是 JavaSE中的重点及 难点。对于学生来说,可能面向过程的编程更容易理解,所以他 们首先会觉得, 为什么要用面向对象, 然后觉得面向对象怎么去 实现,有无从下手的感觉。比如:对象是如何声明、如何

7、创建、 如何使用的?类是如何设计的,为何要把这个方法放在这个类, 而不是其它类之中?怎样编写出符合面向对象编程规范的 Java 程序?这些问题都是一开始接触 Java 时,学生常会提到的问题。 所以,这两章的内容学生是否能顺利地接受和理解, 直接影响到 后面内容的学习,教师在讲授时可以多花一点时间,并多举例,给出程序的大框架,其它内容上机时让学生自己完成。2 提高教学质量的几个方面 这一点对学生学习 Java 语言来说至关重要。2.1 良好的编程习惯编程的能力是需要长期培养、 锻炼形成的, 但编程习惯是可 以通过这门课程培养起来。 良好的编程习惯可以大大提高软件的 可读性、开发速度与质量,减少

8、人为错误,所以养成一个好的编 程习惯对一个程序员来说非常重要。编程习惯是指编程者在程序设计过程中共同遵守的一些规 则或者约定, 并没有规定成文, 但上课时教师应该将一些现有的 优良的 Java 编程风格告诉学生,并要求他们掌握。在课堂中教 师演示程序时更应该处处注重编程习惯,言传身教。比如:类名 与变量、方法名的命名规则,适当的注释,空格、空行的使用, 缩进格式等,要在潜移默化中让学生逐渐形成良好的编程习惯。 这样,我们在选择开发平台时,可以先选用 JDK1.6 及以上的版 本,主要目的是让学生了解 Java 本身的处理机制,加深对 Java 语言的理解。后期的集成开发环境可以选用 eclip

9、se ,网络开发 时可以选用 lomboz-eclipse ,免费也好用。2.2 面向对象的编程思想的理解 面向对象的编程思想是尽量按照人们通常的思维方式, 建立 问题的模型, 因此采用了面向对象的方法后, 软件更容易被人理 解,其可维护性、可扩展性和可复用性得到了很大的提高 。但 对于学生来说, 他们一开始接触到的解决问题的方法大多是类似 于面向过程的方法, 比较习惯于分步骤地去解决问题, 而且有的 学生在一开始接触面向对象的编程方法时, 可能还会觉得相对于 面向过程而言, 并没有什么方便之处, 甚至有时还会觉得面向对 象更为繁琐。 这是因为我们开始时一般都会用一些比较简单的例 子程序, 用

10、面向过程的方法就能方便的解决这些小问题, 所以并 不能体现 Java 这种纯面向对象的优点。但学生的学习目的最终 是要参与各种应用项目的开发,这样,教师在讲到第三、第四章 时,可以加一些这样的例子:class Animal private String name;Animal(String name) = name; public void enjoy() System.out.println(Animal is enjoying);class Cat extends Animal private String eyesColor;Cat(String n,String c

11、) super(n);eyesColor = c;public void enjoy() System.out.println(Cat is enjoying );class Dog extends Animal private String furColor;Dog(String n,String c) super(n);furColor = c;public void enjoy() System.out.pringln(Dog isenjoying );class Lady private String name;private Animal pet;Lady(String name,A

12、nimal pet) = name;this.pet = pet;public void myPetEnjoy() pet.enjoy();public class Test public static void main(String args) Cat c = new Cat(catname,blue);Dog d = new Dog(dogname,black);Lady l1 = new Lady(l1,c);Lady l2 = new Lady(l2,d);l1.myPetEnjoy();l2.myPetEnjoy(); 在这个程序中,有继承、有子类重写父类的方法

13、,有父类的 引用指向子类的对象, 所以用了动态绑定机制, 这样的程序会在 运行时由系统自动检测实际传递的是一个什么动物, 而相应地去 调用这个动物的 enjoy() 方法,无需像面向过程的方法那样,手 动地判断传递的是 Animal或是Cat、Do在可扩展性方面,如 果再增加其它动物, 比如 Snake、 Bird 等,只需定义好相应的类, 从 Animal 这个父类继承,并重写父类的 enjoy() 方法即可,不 需要改动程序的架构。同样的问题,可以让学生想想,如何用面 向过程的方法去解决, 让他们自己对比较一下面向对象与面向过 程的差别。2.3 培养学生的自学能力“授之以鱼,不如授之以渔”

14、,对于大学生来说,必须有很 强的自学能力,一方面是因为课程所给的课时有限,重点、难点 部分需要课后自己消化成自己的知识; 另一方面, 大学生即将走 上社会,更多的知识会在没有老师指导的情况下自己学习、 掌握, 所以教师上课时也应该注意这方面意识的培养。 特别是上机实践 时,鼓励学生发现问题后尽可能自己解决问题。当然,教师也要 指导学生如何更好地自学:其一,对于已讲过的知识点,引导学生根据教师课件,课后 在教材中找到相应部分,自己再复习、总结,巩固所学知识,比 如,第三、四章中会有一些小例子,让学生透彻地分析程序的内 存执行状态,详细画出内存中的结构变化。其二,对于新的知识,可以指导学生如何查询

15、 Java API 文 档。因为它很详细地介绍了 JDK提供的所有类库,比如,在学习 Object 类时,可以指导学生在 java.lang 包中找到 Object 这个 类,看看它所提供的方法,如 toString() 及 equals(), 再看看String 类,它从 Object 继承,而 String 中的这两个方法是否 重写了父类的方法。指导学生在遇到问题时,首先应该查 Java API。其三,充分利用网络。 Java 作为一种开源语言,拥有很多 的网络资源,引导学生查询一些常用网站,或用搜索引擎,充分 利用网络平台获取资源,是提高学生自学能力的重要手段之一。2.4 合理地穿插小项目 所学知识若不能及时地用于实际,那所学知识很快容易忘 记。所以在学生基本掌握了所学知识时, 应尽快地给出一些合适 的小项目,让学生边实践,边巩固所学内容。大多知识是在这样 直接接触代码的时候, 才能获得更深刻的理解, 所以在开课之前, 教师就应该准备好几个配套的小项目, 引导学生完成读代码, 分 析代码, 理解程序的过程, 最终培养学

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论