1、西南财经大学天府学院教 案任课教师: 贾砚池课程名称:面向对象程序设计(Java)任课班级: 13 级专科计算机 01 班、13 级专科网络01 班、13 级专科软件 01 班 授课时间: 2013-2014-2 学期西南财经大学天府学院教务处制西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 1 页 共 51 页教 案编号:1章节 Java SE 程序设计与实践的考核方式和 Java 简介 授课方式 讲授+讨论+上机教学目的(1) 掌握本课程的考核方式、即将要学习的内容以及相关的课堂纪律。(2) 了解课程整体目标。(3) 了解 Java 语言。(4) 了解 Java
2、 程序的类型。(5) 理解 Java 虚拟机(JVM ) 。(6) 掌握 Java 程序运行环境的配置,能够独立完成。(7) 培养学生实际动手能力(自主安装 JDK 以及配置环境变量)。(8) 培养学生自主解决问题的能力。教学重点(1) 环境变量的配置和编译源文件以及 Java 程序打包。教学难点(1) 环境变量的配置和编译源文件以及 Java 程序打包。时间分配 教 学 过 程Min105一、 考核方式(讲授)(1) 考核分为两部分:a) 第一部分:平时,占 60%;其中,考勤: 10%;平时作业或项目: 40%,包括 2次大型的作业任务,每次任务各占 15%,2 次及以上小型作业任务,占
3、10%。根据项完成的程度和质量,由老师评分,未交者得零分;平时表现分:10%,包括课堂纪律、上课积极的参与讨论、主动回答问题及上台演示和讲解程序的编写、小组作业时候的团队协作能力(由组长评分) 。b) 第二部分:期末项目,占 40%;一次大型项目,由小组完成。(2) 旷课 3 次取消考试资格,迟到 3 次算一次旷课。每迟到一次扣 1 分,旷课一次扣 5 分,期末全勤可加 2 分。(3) 课堂内看视频、玩游戏,第一次扣 5 分,第二次扣 10 分,第三次扣 20 分,如果超过4 次者,直接取消该科的考试资格。二、 课堂纪律(讲授)(1) 上课不准吃零食、嗑瓜子等。(2) 下课后带走自己桌上的垃圾
4、,让课桌上保持整洁。(3) 下课后关电脑(主机和显示器 )。(4) 上课不准大声喧哗、玩手机、pad、睡觉等与学习无关的事情。三、 教师信息及答疑时间设定(讲授)四、 学习小组的成立以及成员之间讨论(讨论)(1) 自由分组,每个组 4-6 人,并选定组长,然后为每个组安排好上机位置( 小组成员必须坐在一起),以后就固定座位。(2) 小组讨论:西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 2 页 共 51 页15510101525a) 互相认识,加深了解,了解各自的兴趣和长项。b) 选取一个同学为小组长。c) 探讨学习本课程的方法,并由小组长向老师汇报本次讨论的结果
5、。五、 Java 语言简介(1) Java 是一种程序设计语言,由 Sun Microsystem 公司于 1995 年推出;(2) 早在 1991 年,Sun 公司的 James Gosling 等人开始开发名为 Oak 的程序设计语言,希望用来控制嵌入在有线电视机顶盒和 PDA 等设备中的微处理器;(3) 1994 年,Oak 语言正式更名为 Java;(4) Java 语言凭借其独有的安全性、可移植性和平台无关性,迅速走红。六、 Java 可以做什么?(学生查询资料)由学生自助通过各种方式查询资料,然后老师随机抽取 1-3 名同学回答。七、 Java 虚拟机(讲授)(1) Java 虚拟
6、机(Java Virtual Machine)是可运行 Java 字节码的虚拟计算机系统。(2) 使用 Java 语言编写的程序,实际上是运行在 JVM 之上,而不是运行在操作系统上。(3) 它有一个解释器组件,可以实现 Java 字节码和计算机操作系统之间的通信。八、 开发 Java 程序的步骤(讲授 )(1) 创建 Java 源程序Java 源程序可以使用任何文本编辑器创建与编辑,一般用.java 作为扩展名,其实就是一个使用 Java 语言编写的文本文件;(2) 编译源程序Java 编译器读取 Java 源程序并翻译成 Java 虚拟机能够明白的指令集合,并以字节码的形式保存在文件中,通
7、常,字节码文件以.class 作为扩展名;(3) 运行 class(字节码)文件Java 解释器读取字节码文件,取出指令并翻译成计算机能够执行的机器代码,完成运行过程。九、 编写第一个 Java 程序(讲授 +演示)(1) 打开记事本,新建一个文本文件,将文件名改为 Hello.java,在文件中键入如下内容并保存:class Hellopublic static void main(String args)System.out.println(“Hello world!“);西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 3 页 共 51 页3060(2) 使用
8、javac 编译器编译源文件。(3) .class(字节码)文件。(4) 使用 java 解释器运行字节码文件。十、 分析程序( 讨论+讲授)分组讨论,然后由每个组轮流发言;最后由老师总结。(1) 关键字 class 用来定义一个类,Hello 是类的名称;(2) 在 Java 程序中,所有的语句都必须放在某个类中;(3)整个类及其所有成员都包含在一对花括号中(即和 之间) ,它们标志着类定义块的开始和结束。(4) 定义类的一般语法:class 类名(5) 程序必须从 main 函数开始执行;(6) 关键字 public 是访问修饰符,用来控制类成员的可见范围及作用域;(7) 关键字 stat
9、ic 允许在不创建类的实例的情况下,调用 main 函数;(8) 关键字 void 用来说明 main 函数是没有返回值的;(9) args 是字符串数组,用来从命令行接收参数;(10) String是字符串类型的数组;(11)在 Java 中,类名称一般首字母大写;(12)使用 System.out.println()将信息输出到控制台上,即打印出来。十一、 上机实验(1) 安装 JDK。(2) 进行环境变量的配置。(3) 安装 Eclipse。(4) 熟悉 Eclipse 开发环境。作业布置(1) 编程输出以下信息* 欢迎进入 Java 编程世界*(2) 课后预习 Java 语言基础(Ja
10、va 的基本数据类型、操作符、关键字、流程控制)。课后总结(1) 所有的同学都掌握了本门课程的考核方式。(2) 通过分组学习,同学之间有问题可以互相帮助,学生学习积极性很高,并且通过小组组长的汇报,一部分学习方法较好的同学的经验,得以在全班同学之间共同分享,效果很好。(3) 80%的同学都能够独立完成 Java 开发环境的搭建以及配置。(4) 由于前面有 C 语言的学习基础, 70%以上同学对 Java 程序结构的理解都不存在问题。整体来说,效果良好。西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 4 页 共 51 页教 案编号:2章节 Java 语言基础流程控制
11、分支语句 授课方式 讲授+学生实验+讨论教学目的(1)掌握 Java 中的变量和数据类型。(2)掌握 Java 中变量的作用域规则。(3)掌握数据类型转换。(4)掌握 Java 中的运算符和表达式。(5)掌握选择结构的几种实现方式;并能够独立的应用它们来编写程序。(6)培养学生主动思考问题的能力。(7)培养学生表达能力。(8)培养学生实际动手操作能力。教学重点(1)Java 的基本数据类型、引用类型以及变量的作用域。(2)分支语句。教学难点(1)引用类型以及变量的作用域。(2)分支语句。时间分配 教 学 过 程Min1080一、 作业点评(学生阐述+老师总结)方式:由出现程序问题的同学讲出自己
12、出现的问题以及解决方式,最后由老师总结。(1) 类名不规范、代码排版不规范。(2) public 中的 p 出现大写情况;static 关键字丢失;main 出现 mian;String 中的 S 未大写;System 中的 s 出现了小写。(3) printf 以及 println,print 输出格式混淆.(4) 不匹配或者丢失。二、 抽查上周布置的课后作业,抽查 2-5 个同学来阐述 Java 的基本数据类型、操作符、关键字。(学生阐述+老师讲授)(1) 标识符命名规则a) 变量、函数、数组、对象、类和接口等等都需要命名,这些名称统称为标识符;b) Java 中对于标识符的命名规则作了如
13、下限制:i. 只能由英文字母、数字、下划线 “_”和“$”符号组成。ii. 必须以英文字母、 “_”或“$”开头,即不能以数字开头。iii. 除 “_”和“$”以外,不能包含其它任何特殊字符。iv. 不能与关键字冲突。v. 严格区分大小写。(2) Java 中的关键字:abstract、boolean、break、byte、case、catch、char、class、continue、do、double、else、enum、extends、false、find、finally、float、for、implements、import、instanceof、int、interface、long、n
14、ative、西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 5 页 共 51 页90new、null、package、private、protected、public、return、short、static、super、switch、synchronized、this、throw、throws、true、try、void、while(3) 数据类型(4) 变量的作用域和生命周期a) 变量 的作用域指变量起作用的范围,说明变量在什么部分可以被访问;b) 变量的生命周期是指变量在内存中存在的周期,即什么时候分配空间,什么时候销毁;(5) 运算符和表达式a) 算术运算符b
15、) 关系运算符c) 逻辑运算符d) 条件运算符e) 赋值运算符(6) 选择结构a) if 语句b) ifelse 语句c) ifelse if 语句d) switchcase 语句三、 学生实验(上机+老师指导)(1) 输入一个“男”或者“女” ,对应输出“M”和“F” 。(2) 写程序,若星期一到星期五,则打印出“工作快乐” ,若星期六、星期天则输出“周末更快乐” 。(3) 输入一个分数,输出对应的等级:60 以下 E60-70 D70-80 C80-90 B90 100 A作业布置(1) 输入三个数字,最后从小到大输出排序。(2) 课后预习循环结构的几种语句以及数组的定义。西南财经大学天府
16、学院教案 TIANFU COLLEGE OF SWUFE第 6 页 共 51 页课后总结(1) 通过学生自己对出现问题的总结和老师的总结,80%以上的同学对常见问题的解决方法有了一个深刻的认识。(2) 通过三个上机程序,加深了对循环结构的认识。但是依然有约 20%的同学对 if 和 switch 的用法还不能掌握,需加强程序上机的编写。西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 7 页 共 51 页教 案编号:3章节 流程控制 循环语句数组 授课方式 讲授+ 上机教学目的(1)掌握循环语句的使用。(2)掌握数组的声明以及运用。(3)培养学生主动性和积极性。(4)
17、培养学生的逻辑思维能力。教学重点(1)循环语句。(2)数组、哈希表。教学难点(1)循环语句。(2)数组、哈希表。时间分配 教 学 过 程Min1060一、 作业点评(学生阐述+老师总结)方式:由 3-5 个同学来讲述上周作业的实现思路,最后由老师总结出现的一些问题。(1) 类名不规范(2) 运算符的运用(3) 部分算法的不科学性二、 抽查上周布置的课后作业,抽查 1-3 个同学来阐述循环结构的几种语句以及数组的声明。(学生阐述+老师讲授)(1) 循环语句a) Whileint i=0; while(i+3)System.out.println(i);b) Dowhile 语句int i=1;
18、doSystem.out.println(i);while(i+3);c) For 语句for(int i=1;i=3;i+)System.out.println(i);(2) 流程控制语句a) break:从 switch 语句、循环语句或标号标识的代码块中退出。以下 while 循环用于把 1 加到 100:int a=1,result=0;one: while(true)西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 8 页 共 51 页110result+=a+;if(a=101)break one; /终止循环System.out.println(resu
19、lt); /打印 5050b) continue:跳过本次循环,执行下一次循环,或执行标号标识的循环体。以下 for循环用于对 1 到 100 之内的奇数求和:int result=0;for(int a=1;a=100;a+)if(a%2=0)continue; /如果 a 是偶数,就跳出本次循环,继续执行下次循环else result+=a;System.out.println(result); /打印 2500(3) 讨论:判断下面程序执行了多少次?class Testpublic static void main(String args)int i=0;while(i10)if(i10
20、)i+;continue;if(i=5) break;System.out.println(i);(4)Java 中声明数组的几种方式/仅声明数组的引用,但没有分配内存空间float fAry;/声明数组的同时,根据指定的长度分配内存,但数组中没有值char chAry = new char10;/声明数组并分配内存,同时将其初始化int ary1 = new int1, 2, 3, 4, 5;/与前一种方式相同,仅仅只是语法相对简略int ary2 = 1, 2, 3, 4, 5;三、 学生实验(上机)(1) 【练习题一】编写 Java 程序,计算 100999 之间的全部“水仙花数”的平均
21、值。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153=13+53+33,故 153 是水仙花数。(2) 【练习题二】编写一个 Java 程序,要求在控制台上打印出九九乘法表,效果应如下所示:西南财经大学天府学院教案 TIANFU COLLEGE OF SWUFE第 9 页 共 51 页1*1=1,1*2=2, 2*2=4,1*3=3, 2*3=6, 3*3=9,1*4=4, 2*4=8, 3*4=12, 4*4=16,1*5=5, 2*5=10, 3*5=15, 4*5=20, 5*5=25,1*6=6, 2*6=12, 3*6=18, 4*6=24, 5*6=30
22、, 6*6=36,1*7=7, 2*7=14, 3*7=21, 4*7=28, 5*7=35, 6*7=42, 7*7=49,1*8=8, 2*8=16, 3*8=24, 4*8=32, 5*8=40, 6*8=48, 7*8=56, 8*8=64,1*9=9, 2*9=18, 3*9=27, 4*9=36, 5*9=45, 6*9=54, 7*9=63, 8*9=72, 9*9=81,(3) 【练习三】1.打印如下图型:*2.* * * * * *作业布置(1) 一个小球从 100 米处落下,每次弹起是原来的一半,问弹起第二十次落下后所经过的米数。课后总结(1) 通过这三周的程序编写和讲解,发现 50%的同学对选择结构和循环结构的熟练程序还不够,对一些算法的实现还存在很大的问题,逻辑思维能力较弱。因此接下来的 1-2 周,决定采用大量的例子程序进行上机练习,然后由老师以及学得比较好的同学进行辅导,为后面的面向对象编程的一些概念打下基础。