首页 JAVA面向对象程序设计教案

JAVA面向对象程序设计教案

举报
开通vip

JAVA面向对象程序设计教案         教案首页 本次课标题:说课 、第1章 面向对象技术I 授课日期 第1周 周3 授课班级 课 时 2 上课地点 教 学 目 标 能力(技能)目标 知识目标 1. Java高级技术体系 2. 了解Java典型应用 3. 应用面向对象思想处理问题 1 掌握Java知识体系 2 掌握面向对象技术思想 教 学 任 务 及 案 例 教学任务: 课程整体设计介绍 Java技术体系 Ja...

JAVA面向对象程序设计教案
        教案首页 本次课标题:说课 、第1章 面向对象技术I 授课日期 第1周 周3 授课班级 课 时 2 上课地点 教 学 目 标 能力(技能)目标 知识目标 1. Java高级技术体系 2. 了解Java典型应用 3. 应用面向对象思想处理问题 1 掌握Java知识体系 2 掌握面向对象技术思想 教 学 任 务 及 案 例 教学任务: 课程整体设计介绍 Java技术体系 Java典型 应用 教学案例: 编写职员类。 重 点 难 点 重点:Java典型 应用 难点:Java技术体系 单 元 考 核 面向对象技术基础应用: 练习写一个职员类,包括属性:年龄、姓名、工 资;方法:显示年龄、显示姓名、修改姓名、获取工资 参 考 资 料 《Java面向对象程序设计》 注: 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) Java高级程序技术体系 Java面向对象设计思想 讲授 设问 5分钟 引入 (任务项目) 实现管理员类 演示 启发 提问 讨论 个别回答 10 分钟 操练 (掌握初步或基本能力) 1.定义管理员类 2. 定义管理员类的属性 3.类的成员 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 1. 编写类的toDate()方法 2.创建管理员对象 3.使用类的属性 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 类的属性控制能力 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 运行与调试 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 会定义一个类 会创建一个对象 会编写和使用类的toDate()方法 教师讲授 5 分钟 作业 编程题 5 分钟 后记 提问与比较教学方式,激发学生兴趣。 程序调试,让学生对Java程序获取感性认识。 教学内容 说课内容: 1、为什么要学本门课 《Java高级程序设计》是计算机类专业必修的一门专业核心课,本课程以能力与知识相结合为培养目标,以社会岗位需求为向导,切实培养同学们的逻辑与编程思维及使用程序设计语言解决实际问题的能力,为同学们走上工作岗位打下坚实的基础。 具体职业岗位专业能力培养: (1)具备面向对象编程的编程思想及基本算法,能根据问题正确选择、组合算法。 (2)能独立编写代码,编写测试数据,并能独立调试程序,获得正确结果。   (3)具备进行分析和处理Java程序运行中产生的有关技术问题的能力。 (4)开发创新的能力。 本门课学什么 通过本门课程的学习,使同学们掌握 Java 程序设计语言的基本语法, Java 面向对象编程方法,同时应具备利用 JDK来创建、编译、调试 Java 项目的能力。对于本门课程有如下三个教学目标: (1)知识目标:理解和掌握JAVA语言基本语法和语义,掌握标准程序和小应用程序的开发方法,掌握数据库、网络编程的基本开发方法。 (2)能力目标:要求能较熟练地使用 JDK 进行 Java 程序的编辑、编译和调试技术,使用 MyEclipse进行图形用户界面设计和数据库应用程序的开发;能开发有一定实用价值的应用程序。 (3)素质目标:养成良好的编程习惯、提高团队精神和协作精神、艰苦奋斗意识、心理素质和克服困难的能力。 怎么组织本门课 1)以就业为导向,进行专业定位。 2)对软件开发工作岗位和工作任务进行分析。 3)明确计算机应用专业的核心能力,进行课程设计,做到实际的工作岗位——Java软件编程师与工作任务相对应。 4)按照职业行动完整性和工作过程系统化的理念归纳出学习情境。 5)学习情境注意由浅到深,鼓励同学们利用网络资源进行自主学习和开放性学习。 课程设计理念与思路 学习内容 如何学习? 1)启发教学 通过各种教学方式和手段激发同学们的学习欲望,启发同学们,积极思维,发现问题,提出问题,并逐步解决问题。例如,在讲解程序设计时,不是简单地给出程序清单,而是从分析问题入手,继而找出解决问题的方法,再给出算法,最后编写出完整的程序。 这一过程的关键是每一步都采用与同学们一起探讨的方式,让同学们在启发下思考,在思考中解决问题,从而掌握独立分析问题、解决问题的方法。 学习方法 2)项目教学和案例教学法 以一个实际的项目(学籍管理系统)为例展开教学,将 知识点 高中化学知识点免费下载体育概论知识点下载名人传知识点免费下载线性代数知识点汇总下载高中化学知识点免费下载 融入项目中,运用面向对象的思想进行分析、设计和实现,树立同学们面向对象的程序设计思想。 而案例教学则贯穿在课程的主要章节中,通过“典型程序案例”→“语法,实践知识点说明”→“模仿编程”→“实践提高”的教学组织方式,培养同学们实际应用能力。 学习方法 通过精选案例、分解任务、讲练有机融合,将相关知识点融入项目,通过项目实现, 让同学们掌握Java技术,并对面向对象编程有一个直观和更加感性的认识,再通过动画演示、趣味教学等方法,使同学们能够积极参与整个教学过程,让同学们建立起面向对象编程的思想,体现“以同学们为中心,教师为主导”的教学思想。 学习方法 3)任务驱动教学法 对每个知识点的讲解采用“任务驱动”的方法,通过“提出任务→分析任务→完成任务→边学边做→总结”的过程,体现出互动创新、提倡个性、重在应用、共同协作的教学风格。 4)榜样激励教学法      在教学过程中,通过展示分析高年级同学们或同班(或同年级)同学们的优秀作品,启发激励其他同学们。实践证明,榜样激励教学法很有效,特别是展示同班(或同年级)同学们作品最具激励作用。 考核方法 根据实践为主、理论够用的高职教学原则,本课程的考核注重学习过程评价、注重专业实践能力。 考试成绩=理论考试(课程学习结束时,采用“教考分离” 制度 关于办公室下班关闭电源制度矿山事故隐患举报和奖励制度制度下载人事管理制度doc盘点制度下载 ,以闭卷笔试方式进行。考试成绩占学科成绩的80%)+平日成绩(作业+出勤占20%)。 Java语言的诞生 Java程序在1995年诞生。目前使用的Java版本是Java2,它包括J2SE、J2EE、J2ME三个版本,分别用于不同的领域。 J2SE(Java Standard Edition)—用于工作站、PC机,为桌面开发和低端商务应用提供了Java标准平台。 J2EE(Java Enterprise Edtion)—用于服务器,构建可扩展的企业级Java平台。 J2ME(Java Micro Edtion)—嵌入式Java消费电子平台,适用于消费性电子产品和嵌入式设备。 8、Java语言的特点 Java语言是简单的、面向对象的语言,它具有分布式、安全性,又可以实现多线程,更主要的是它与平台无关,解决了困扰软件界多年的软件移植问题。 教案首页 本次课标题:第1章 面向对象技术I 授课日期 第1周 周3 授课班级 课 时 2 上课地点 1JD308 教 学 目 标 能力(技能)目标 知识目标 会编写类的成员方法 会进行方法调用 3. 会创建包和导入包 1.创建包 2.在包中创建类 教 学 任 务 及 案 例 训练任务: 1. 包的应用 2.项目实战任务---编码实现购物管理系统的部分功能 案例:开发“shopping我喜欢”购物管理系统(2) 重 点 难 点 教学重点:1. 包的应用 2.项目实战任务---编码实现购物管理系统的部分功能    教学难点:语法错误原因查找及解决; 单 元 考 核 1. 包的应用 2.项目实战任务---编码实现购物管理系统的部分功能 参 考 资 料 《Java面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 本次课主要内容: 在包中创建类 进行方法调用 讲授 设问 5分钟 引入 (任务项目) 创建购物系统项目结构 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.创建包 2.在创建的包中创建管理员类 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 1.完成购物系统的项目结构 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 类的属性控制能力 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 运行与调试 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 1.创建包 2.在创建的包中创建管理员类 教师讲授 5 分钟 作业 编程题 5 分钟 后记 教学内容 现在我们来创建一个电动狮子(AutoLion)类,它的属性和行为见示例1. 示例1 * * AutoLion.java * 电动玩具类 */ public class AutoLion { Date color = "黄色"; // 颜色 /* * 跑 */ public void run() { System.out.println("正在以0.1米/秒的速度向前奔跑。"); } /* * 叫 */ public Date bark() { Date sound = "吼"; return sound; } } 在示例1中,类定义了两个行为(方法):“奔跑”和“叫”。 类的方法必须包括以下3个部分。 (1) 方法的名称 (2)方法返回值的类型 (3)方法的主体 语法 public 返回值的类型 方法名(0{ //方法的主体 } 通常,在编写方法时,我们分两步完成。 第一步:定义方法名和返回值。 第二步:在{}中编写方法的主体部分。 另外,在编写类的方法时,要特别注意以下几点。 (1)由一对大括号括起来的语句是方法体,它包含一段程序代码,执行时完成一定的工作。 (2)方法名注意用于调用这个方法时用,命名方法像命名java api、类时一样。 (3)方法就像一个“黑匣子”,完成某个功能,并且可能在执行完后返回一个结果。在方法的主体内,如果方法具有返回类型,则必须使用关键字return返回值。 语法 return 表达式; 比如:在toDate()方法中,返回类型是Date类型,因此在方法体中必须用return返回一个字符串。 如果方法根本没有返回值,则返回值的类型应该使用void,用于说明无返回值。 教案首页 本次课标题:第2章面向对象技术II 授课日期 第2周 周1 授课班级 课 时 2 上课地点 一体化B 教 学 目 标 能力(技能)目标 知识目标 能够用继承处理问题 能够使用Java程序解决常见问题 初步理解面向对象编程思想 掌握java单继承逻辑结构。 教 学 任 务 及 案 例 教学任务: 继承; This super关键字 案例: 描述两种动物羊Sheep和狼Wolf ,各自的要求如下: lSheep p属性:名称,重量 p方法:吃饭(吃草)、睡觉、呼吸、动物描述 lWolf p属性:名称,重量 p方法:吃饭(吃肉)、睡觉、呼吸、动物描述 重 点 难 点 重点:开发Java程序的步骤 难点:Java程序的框架 项目的开发 单 元 考 核 Java程序的框架 参 考 资 料 《Java面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1.熟练使用继承 2.会使用this关键字 3.会进行代码排错 讲授 设问 5分钟 引入 (任务项目) 继承案例 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) Java框架 继承语法框架编写 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 掌握Java开发步骤 掌握继承语法 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.制作系统主菜单 代码排错 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 开发Java继承程序的步骤 Java项目组织结构 Java编码 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 开发Java程序的步骤 Java程序的框架 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 继承机制 同类事物具有共同性,在同类事物中,每个事物又具有其特殊性。运用抽象的原则舍弃对象的特殊性,抽取其共同性,则得到一个适应于一批对象的类,这便是一般类,而把具有特殊性的类称为特殊类。也就是说,如果类B具有类A的全部属性和方法,而且又具有自己特有的某些属性和方法,则把类A称作一般类,把类B叫做类A的特殊类。例如:考虑轮船和客轮这两个类。轮船具有吨位、时速、吃水线等属性,并具有行驶、停泊等服务;客轮具有轮船的全部属性与服务,又有自己的特殊属性(如载客量)和服务(如供餐等)。若把轮船看做一般类,则客轮是轮船的特殊类。 在面向对象程序设计中 ,继承所表达的就是一种对象类之间的相交关系,它使得某类对象可以继承另外一类对象的数据成员和成员方法。若类B继承类A时,则属于B的对象便具 有类A的全部或部分性质(数据属性)和功能(操作)。我们称被继承的类A为基类、父类或超类,而称继承类B为A的派生类或子类。父类与子类的层次关系如图4-2所示。 图4-2 父类与子类的层次关系 继承避免了对一般类和特殊类之间共同特征进行的重复描述。同时,通过继承可以清晰地表达每一项共同特征所适应的概念范围——在一般类中定义的属性和操作适应于这个类本身以及它以下的每一层特殊类的全部对象。运用继承原则使得系统模型比较简练也比较清晰。 一般来说,继承具有下述特征: (1) 继承关系是传递的。若类C继承类B,类B继承类A时,则类C既有从类B继承下 来的属性与方法,也有从类A中继承下来的属性与方法,还可以有自己新定义的属性和方法。继承来的属性和方法尽管是隐式的,却仍是类C的属性和方法。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段。 (2) 继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系。 (3) 提供软件复用功能。若类B继承类A,建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)。这种做法能减小代码和数据的冗余度,大大增加程序的重用性。 (4) 通过增强一致性来减少模块间的接口和界面,大大增加程序的易维护性。 (5) 单一继承机制。而Java出于安全性和可靠性的考虑,仅支持单重继承,而实现多个接口。 教案首页 本次课标题:第2章面向对象技术II 授课日期 第2周 周3 授课班级 课 时 2 上课地点 一体化B 教 学 目 标 能力(技能)目标 知识目标 能够用继承处理问题 能够使用Java程序解决常见问题 初步理解面向对象编程思想 掌握java单继承逻辑结构。 教 学 任 务 及 案 例 教学任务: 继承; Static final关键字 案例: 描述两种动物羊Sheep和狼Wolf ,各自的要求如下: lSheep p属性:名称,重量 p方法:吃饭(吃草)、睡觉、呼吸、动物描述 lWolf p属性:名称,重量 p方法:吃饭(吃肉)、睡觉、呼吸、动物描述 重 点 难 点 重点:开发Java程序的步骤 难点:Java程序的框架 项目的开发 单 元 考 核 Java程序的框架 参 考 资 料 《Java面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1.熟练使用继承 2.会使用static final关键字 3.会进行代码排错 讲授 设问 5分钟 引入 (任务项目) 继承案例 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) Java static final 关键字 继承语法框架编写 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 掌握Java开发步骤 掌握继承语法 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1. 类的关键字作用 代码排错 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1开发Java继承程序的步骤 2Java项目组织结构 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 开发Java程序的步骤 Java程序的框架 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 案例如下: //建一个A类   class A{   //成员java api 其中num是实参   int num=0;   //成员方法,其中 i 是型参   public A(int i){ //输入int型文件输出下面   System.out.println("aaaaaaaaaaaaaaaaaaa");   System.out.println("i= "+i);   //把输入的i赋值给成员java apinum   num=i;   }   }   //B继承A   class B extends A{   int num=0;   //成员方法B.   public B(){   //继承类A的方法.因为B继承了A必然继承了A的特性.所以输入int值10令方法实现.   super(10);   System.out.println("bbbbbbbbbbbbbbbbbbbb");   //这里的num是类B的.   System.out.println("num= "+num);   //如果想显示类A的num则需要用下列的super.num.这里注意num在类A中需是成员java api才可以.   System.out.println("super.num= "+super.num);   }   }   //建立测试类C   public class C{   //main   public static void main(Date aa[]){   //new 一个对象B()   new B();   }   } 教案首页 本次课标题:第3章面向对象技术III(多态) 授课日期 第3周 周1 授课班级 课 时 2 上课地点 一体化B 教 学 目 标 能力(技能)目标 知识目标 能够用多态处理问题 能够使用Java程序解决常见问题 初步理解面向对象编程思想 掌握java单多态逻辑结构。 教 学 任 务 及 案 例 教学任务: 多态; Static final关键字 案例: 描述两种动物羊Sheep和狼Wolf ,各自的要求如下: lSheep p属性:名称,重量 p方法:吃饭(吃草)、睡觉、呼吸、动物描述 lWolf p属性:名称,重量 p方法:吃饭(吃肉)、睡觉、呼吸、动物描述 重 点 难 点 重点:开发Java程序的步骤 难点:Java程序的框架 项目的开发 单 元 考 核 Java程序的框架 参 考 资 料 《Java面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1.熟练使用多态 2.会使用static final关键字 3.会进行代码排错 讲授 设问 5分钟 引入 (任务项目) 多态案例 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) Java static final 关键字 多态语法框架编写 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 掌握Java开发步骤 掌握多态语法 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1. 类的关键字作用 代码排错 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1开发Java多态程序的步骤 2Java项目组织结构 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 开发Java程序的步骤 Java程序的框架 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 案例如下: //建一个A类   class A{   //成员java api 其中num是实参   int num=0;   //成员方法,其中 i 是型参   public A(int i){ //输入int型文件输出下面   System.out.println("aaaaaaaaaaaaaaaaaaa");   System.out.println("i= "+i);   //把输入的i赋值给成员java apinum   num=i;   }   }   //B多态A   class B extends A{   int num=0;   //成员方法B.   public B(){   //多态类A的方法.因为B多态了A必然多态了 教案首页 本次课标题:第3章面向对象技术III(多态) 授课日期 第3周 周3 授课班级 课 时 2 上课地点 一体化B 教 学 目 标 能力(技能)目标 知识目标 能够用多态处理问题 能够使用Java程序解决常见问题 初步理解面向对象编程思想 掌握java单多态逻辑结构。 教 学 任 务 及 案 例 教学任务: 多态; Static final关键字 案例: 描述两种动物羊Sheep和狼Wolf ,各自的要求如下: lSheep p属性:名称,重量 p方法:吃饭(吃草)、睡觉、呼吸、动物描述 lWolf p属性:名称,重量 p方法:吃饭(吃肉)、睡觉、呼吸、动物描述 重 点 难 点 重点:开发Java程序的步骤 难点:Java程序的框架 项目的开发 单 元 考 核 Java程序的框架 参 考 资 料 《Java面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1.熟练使用多态 2.会使用static final关键字 3.会进行代码排错 讲授 设问 5分钟 引入 (任务项目) 多态案例 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) Java static final 关键字 多态语法框架编写 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 掌握Java开发步骤 掌握多态语法 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1. 类的关键字作用 代码排错 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1开发Java多态程序的步骤 2Java项目组织结构 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 开发Java程序的步骤 Java程序的框架 教师讲授 5 分钟 作业 习题 5 分钟 后记 作用 把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化。 赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。也就是说,父亲的行为像儿子,而不是儿子的行为像父亲。 举个例子:从一个基类中派生,响应一个虚命令,产生不同的结果。 比如从某个基类继承出多个对象,其基类有一个虚方法Tdoit,然后其子类也有这个方法,但行为不同,然后这些子对象中的任何一个可以赋给其基类对象的引用,或者将子对象地址赋给基类指针,这样其基类的对象就可以执行不同的操作了。实际上你是在通过其基类来访问其子对象的,你要做的就是一个赋值操作。 使用继承性的结果就是可以创建一个类的家族,在认识这个类的家族时,就是把导出类的对象当作基类的对象,这种认识又叫作upcasting。这样认识的重要性在于:我们可以只针对基类写出一段程序,但它可以适应于这个类的家族,因为编译器会自动就找出合适的对象来执行操作。这种现象又称为多态性。而实现多态性的手段又叫称动态绑定(dynamic binding)。 简单的说,建立一个父类的对象,它的内容可以是这个父类的,也可以是它的子类的,当子类拥有和父类同样的函数,当使用这个对象调用这个函数的时候,定义这个对象的类(也就是父类)里的同名函数将被调用,当在父类里的这个函数前加virtual关键字,那么子类的同名函数将被调用。 3例子 class A { public: A() {} void foo() { } }; class B : public A { public: B() {} void foo() { } }; public interface Parent // 父类接口 { public void simpleCall(); } public class Child_A implements Parent { public void simpleCall() { //具体的实现细节; } } public class Child_B implements Parent { public void simpleCall() { //具体的实现细节; } } //当然还可以有其他的实现 然后,我们就可以看到多态所展示的特性了: Parent pa = new Child_A(); pa.simpleCall()则显然是调用Child_A的方法; Parent pa = new Child_B(); pa.simpleCall()则是在调用Child_B的方法。所以,我们对于抽象的父类或者接口给出了我们的具体实现后,pa 可以完全不用管实现的细节,只访问我们定义的方法,就可以了。事实上,这就是多态所起的作用,可以实现控制反转这在大量的J2EE轻量级框架中被用到,比如Spring的依赖注射机制。 教案首页 本次课标题:第4章:抽象类、接口、包和常用API 授课日期 第4周 周1 授课班级 上课时间 2课时 上课地点 实验楼3楼 教学目标 能力(技能目标) 知识目标 知会String的应用 能利用String完成数据的存取。 掌握java api的概念 会使用常用String 能力训练任务及案例 训练任务:升级Java应用程序输出学生相关信息 实现运算功能: 计算成绩差 计算成绩平均分 案例:开发“shopping我喜欢”购物管理系统(2) 重 点 难 点 教学重点:使用常用String    教学难点:使用常用String 单元考核 任务: 开发“shopping我喜欢”购物管理系统: 实习购物结算及购物小票打印业务。 计算会员购物所获积分 模拟幸运抽奖。 计算员工工资。 参考资料 Java程序开发教程 清华大学出版社 张基温 步 骤 教学内容 教学方法 教学手段 学生活动 时间分配 告知 (教学内容、目的) 本次课主要内容: 掌握java api的概念 会使用常用String int, double, char, String 会使用基本运算符 赋值运算符,算术运算符 会进行String转换 讲授 设问 课件 演示 10 分钟 引入 (任务项目) 项目案例演示 演示 启发 提问 效果演示 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 指导——计算购物消费金额 教师讲解 学生操作 演示 个别操作 集体提示 20 分钟 深化 (加深对基本能力的体会) 阶段2:练习——实现购物结算、购物小票打印及购物积分计算 。 教师演示 要点提示 重点讲解 演示操作 步骤课件 个别回答 集体讨论 25 分钟 归纳 (知识和能力) 阶段3:指导——模拟幸运抽奖 讲授 课件 演示 集体思考 个别回答 10 分钟 训练 巩固 拓展 检验 发生自动类型转换的条件 如何进行强制类型转换 运行与调试 启发诱导 难点提示 个别指导 视频课件 个人操作 小组讨论 35 分钟 总结 什么是java api? 如何声明java api、给java api赋值和使用java api? Java中常用的String有哪些? 算术运算符中“/”和“%”的区别是什么? 教师讲授 课件 10 分钟 作业 练习——计算员工工资 5 分钟 后记 加强String的理解 教学内容:Java中String类的方法及说明 一、构造函数      String(byte[ ] bytes):通过byte数组构造字符串对象。      String(char[ ] value):通过char数组构造字符串对象。      String(Sting original):构造一个original的副本。即:拷贝一个original。      String(StringBuffer buffer):通过StringBuffer数组构造字符串对象。   例如:       byte[] b = {'a','b','c','d','e','f','g','h','i','j'};       char[] c = {'0','1','2','3','4','5','6','7','8','9'};       String sb = new String(b);                 //abcdefghij       String sb_sub = new String(b,3,2);     //de       String sc = new String(c);                  //0123456789    二、Java中String类的常用方法: public char charAt(int index) 返回字符串中第index个字符; public int length() 返回字符串的长度; public int indexOf(String str) 返回字符串中第一次出现str的位置; 返回该字符串去掉开头和结尾空格后的字符串 public String[] split(String regex) 将一个字符串按照指定的分隔符分隔,返回分隔后的字符串数组 实例:   public class SplitDemo{      public static void main (String[] args) {              String String = "2008/09/10";             String[ ] StringAfterSplit= new String[3];             StringAfterSplit=String.split("/");         //以“/”作为分隔符来分割String字符串,并把结果放入3个字符串中。             for(int i=0;i sa=new ArrayList(); sa.add("英语"); sa.add("计算机"); sa.add(new String("语文")); Iterator it=sa.iterator(); int i=0; for(String a:sa){ i+=1; System.out.println("sa中的第"+i+"个元素是"+a); } for(int k=0;k 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 中,首先要确认八戒是在发送邮件,所以先要验证八戒是否在给某个邮箱发送邮件,确认之后,从邮件地址中提出@符号后面的部分与pansidong.com进行匹配,匹配成功后进行拦截。 第一步:确认八戒正在进行邮件发送。即验证消息的接收者是否为一个电子邮箱。 在这里我们不做精密的验证,仅仅判断消息接受者是否包含“@”符号及“.”,并且“.”符号在@符号后面。 // 消息接收者 String receiver = "zhiZhuMM@pansidong.com"; if (receiver.indexOf('@') != -1 && receiver.indexOf(".") > receiver.indexOf("@")) { System.out.println("八戒正在发送邮件呢!); //继续判断邮件接收者的身份是否蜘蛛M } 第二步:确认八戒在发送邮件后,验证接收者是否为pansidong.com。 从接收者信息中查找“@”符号的位置,然后从“@”符号下一位开始截取至结束位置,即可获得接收者身份。 String who = receiver.substring(receiver.indexOf("@") + 1); if (who.equals("pansidong.com")) { System.out.println("可逮住你了!停下!); } 教案首页 本次课标题:第13章 StringBuffer的使用 授课日期 第14周 周3 授课班级 12软件外包 课 时 2 上课地点 1JD308 教 学 目 标 能力(技能)目标 知识目标 1. 掌握StringBuffer的使用 1.StringBuffer调用toString()方法转换为String类型 教 学 任 务 及 案 例 案例:自定义方法实现计算器 重 点 难 点 重点:掌握StringBuffer的使用 难点:StringBuffer转成String类型 单 元 考 核 项目实战任务--自定义方法实现计算器 参 考 资 料 《Java语言与面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) StringBuffer调用toString()方法转换为String类型 StringBuffer对象调用append方法将在StringBuffer对象后面追加新的字符串 讲授 设问 5分钟 引入 (任务项目) 1.自定义方法实现计算器 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.StringBuffer调用toString()方法转换为String类型 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 代码练习 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.StringBuffer对象调用append方法将在StringBuffer对象后面追加新的字符串 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1.自定义方法实现计算器 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 1.掌握StringBuffer的使用 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 知识点: 1.符串对象之StringBuffer Java中除了我们常用的String类型外,还提供了StringBuffer类型作为更高效的处理类型。 StringBuffer对象的声明及初始化。 StringBuffer buffer = new StringBuffer(); StringBuffer buffer2 = new StringBuffer("小新"); 2.使用StringBuffer对象。 String s1 = buffer2.toString(); String s2 = buffer2.append(",你好!"); StringBuffer对象可以通过调用toString()方法转换为String类型,调用append方法将在StringBuffer对象后面追加新的字符串。 教案首页 本次课标题:第14章 项目案例分析 授课日期 第15周 周3 授课班级 12软件外包 课 时 4 上课地点 一体化教室B 教 学 目 标 能力(技能)目标 知识目标 项目案例分析 功能流程分析 1、项目案例分析 2、功能流程分析 教 学 任 务 及 案 例 案例:黑杰克游戏 重 点 难 点 重点:项目案例分析 难点:功能流程分析 单 元 考 核 项目实战任务--黑杰克游戏 参 考 资 料 《Java语言与面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1、项目案例分析 2、功能流程分析 讲授 设问 5分钟 引入 (任务项目) 1.黑杰克游戏 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.项目案例分析 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 代码练习 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.功能流程分析 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1.黑杰克游戏 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 项目案例分析、功能流程分析 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 知识点: 1、 黑杰克游戏实现如下功能 发牌:一开始给每个玩家发一张牌,这张牌是底牌,只有玩家自己知道是什么,然后只发给要牌的玩家。如果所有玩家都不再要牌,则开牌计分。 计分:2到10都是按牌面计算点数,直接累加。J、Q、K按10点计算,A一般记作11点累加,此时如果点数大于21点则将A记作1点。 爆分:21点为最大点数值,如果玩家手中的牌点数大于21点,则属于爆分,玩家手中点数将归0,判定为输。 要牌:玩家在底牌之后可以继续要牌,知道点数满意或爆分为止。 下注:玩家在每局开局前可下注,定当前局输赢的钱数。 输赢:21点位最大点数,哪个玩家点数大,就哪个玩家赢 2、需求讲解(30分钟) 教员演示游戏效果,讲解基本需求。 3、编码阶段(350分钟) (1)扑克及玩家类(100分钟) (2)荷官类(50分钟) (3)玩家手中的牌类(50分钟) (4)游戏类主要方法(50分钟) (5)游戏类辅助方法(30分钟) 教案首页 本次课标题:第14章 项目案例分析 授课日期 第16周 周3 授课班级 12软件外包 课 时 4 上课地点 1JD308 教 学 目 标 能力(技能)目标 知识目标 1. 项目规划设计 1.创建对应的对象类 教 学 任 务 及 案 例 案例:黑杰克游戏 重 点 难 点 重点:项目规划设计 难点:创建对应的对象类 单 元 考 核 项目实战任务--黑杰克游戏 参 考 资 料 《Java语言与面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 项目规划设计 2.创建对应的对象类 讲授 设问 5分钟 引入 (任务项目) 1.黑杰克游戏 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.项目规划设计 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 代码练习 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.创建对应的对象类 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1.黑杰克游戏 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 1.项目规划设计 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 知识点: 1.项目规划设计 1、需求讲解(30分钟) 教员演示游戏效果,讲解基本需求。 2、编码阶段(350分钟) (1)扑克及玩家类(100分钟) (2)荷官类(50分钟) (3)玩家手中的牌类(50分钟) (4)游戏类主要方法(50分钟) (5)游戏类辅助方法(30分钟) 3、项目总结(20分钟) 创建对应的对象类 扑克类 对于一张扑克牌来说,主要有牌面值及花色,Card类用faces数组及suits数组分别存储所有牌面值及花色,并提供了getFace()方法及getSuit()方法获取一张扑克的面值及花色信息。 荷官类 荷官的抽象只是实现了两个较核心的能力,一个是发牌,一个是洗牌。发牌涉及到一个随机算法的问题,是比较重要的运算处理。 玩家类 玩家类的抽象是非常明显的,完全模拟了现实中一个玩家的属性及行为,属性有:赢次数、输次数、拥有现金数、手上的牌。 与赌场相关的行为能力也相当完善,例如获取发牌、重开一局等等。 教案首页 本次课标题:第15章 关键代码的编写 授课日期 第17周 周3 授课班级 12软件外包 课 时 2 上课地点 一体化教室B 教 学 目 标 能力(技能)目标 知识目标 关键代码的编写 1.测试相应功能 教 学 任 务 及 案 例 案例:黑杰克游戏 重 点 难 点 重点:关键代码的编写 难点:测试相应功能 单 元 考 核 项目实战任务--黑杰克游戏 参 考 资 料 《Java语言与面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 1、关键代码的编写 2、测试相应功能 讲授 设问 5分钟 引入 (任务项目) 1.黑杰克游戏 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.关键代码的编写 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 代码练习 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.测试相应功能 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1.黑杰克游戏 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 测试相应功能 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 知识点: 1、 关键代码的编写 扑克类关键代码: 玩家类关键代码: package com.systop.blackjack; public class CardsInHand { Card[ ] cards = new Card[22];//玩家最多可以拿2张牌就会爆 分 /** * 接受一张发牌 */ public void setCard(Card card) {} /** * 清空玩家手中的牌 */ public void clear() {} /** * 返回玩家手中的牌张数 */ public int getSize() {} /** * 返回玩家手中的牌列表 */ public String toString() {} } 游戏类之主要方法 package com.systop.blackjack; import java.util.Scanner; public class BlackJack { Player player;// 玩家 Player computer;// 电脑 Dealer deck;// 获取一副牌 Scanner input; /** * 构造方法,输出菜单并完成所有方法调用 */ public BlackJack() {} /** * 游戏开始,在这里完成第一把的投注于发出第一张牌, *然后玩家选择是投注加倍金额,发下一张牌还是PASS或者看牌 */ public void start() {} /** * 查看玩家得分 */ public void checkStore() {} //……………….. /** * 玩家投注加倍 */ public void yourDouble(int money) { } /** * 点数计算 * @param player 游戏参与者 */ public int computePoint(Player player) {} /** * 选择pass后计算输赢 */ public void yourPass(int money) {} /** * 再发一张 */ public void getCardAgain(int money) {} /** * 选择开牌后判断输赢 */ public void winOrLose(int money) {} /** * 电脑玩家的控制 */ public int comPlayer() { public BlackJack() { player = new Player(); computer = new Player(); deck = new Dealer(); String str = null; input = new Scanner(System.in); while (true) { player.playAgain();// 清空玩家手中的牌 computer.playAgain(); // 初始化游戏界面 System.out. println("***************************************************"); System.out . println("** **"); System.out. println("** 黑杰克全世界都在用它赚钱 **"); System.out. println("** **"); System.out. println("***************************************************"); System.out.println("\t\t 1.开始游戏\n"); System.out.println("\t\t 2.查看比分\n"); System.out.println("\t\t 3.结束游戏\n"); System.out.println("请选择:); str = input.next(); switch (Integer.parseInt(str)) { case 1: start(); break; case 2: checkStore(); break; case 3: System.exit(0);// 程序结束 、 break; default: System.out.println("输入错误!请重新输入:"); break; } 教案首页 本次课标题:第16章 修改对应BUG 授课日期 第18周 周3 授课班级 12软件外包 课 时 2 上课地点 1JD308 教 学 目 标 能力(技能)目标 知识目标 1. 修改对应BUG 1.形成开发文档 教 学 任 务 及 案 例 案例:黑杰克游戏 重 点 难 点 重点:修改对应BUG 难点:形成开发文档 单 元 考 核 项目实战任务--黑杰克游戏 参 考 资 料 《Java语言与面向对象程序设计》 注:表格内容统一用5号宋体填写。 教学设计 步 骤 教学内容 教师活动 (方法与手段) 学生活动 时间分配 告知 (教学内容、 目的) 修改对应BUG 2.形成开发文档 讲授 设问 5分钟 引入 (任务项目) 1.黑杰克游戏 演示 启发 提问 讨论 个别回答 5 分钟 操练 (掌握初步或基本能力) 1.修改对应BUG 教师讲解 学生操作 个别操作 集体提示 15分钟 深化 (加深对基本能力的体会) 代码练习 教师演示 要点提示 重点讲解 个别回答 集体讨论 10分钟 归纳 (知识和能力) 1.形成开发文档 讲授 集体思考 个别回答 5 分钟 训练 巩固 拓展 检验 1.黑杰克游戏 启发诱导 难点提示 个别指导 个人操作 小组讨论 10分钟 总结 1.形成开发文档 教师讲授 5 分钟 作业 习题 5 分钟 后记 教学内容 知识点: 修改对应BUG 对 BUG 概念、类型划分、 BUG 状态、 BUG 严重程度等内容进行定义和规范,以便进 一步指导我们的测试工作。 BUG :软件中存在的瑕疵,可能会导致系统失效。简单的说就是软件系统中存在的可能 导致系统出错、失效、死机等问题的错误或缺陷。 BUG提交要求 版本项:测试开始定义本次测试的版本号,测试总结要体现出来。 测试项:主菜单+次菜单+次次菜单 缺陷说明:操作步骤+错误内容+原因说明(可选) 形成开发文档 软件开发文档是软件开发使用和维护中的必备资料。它能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,尤其在维护工作中,文档是不可或缺的资料。 客机� � 父类 子类   子类 � � 飞机� � 汽车� � 轮船� � 货轮� � 客轮� � 运输工具� � 空中加油� � 公共汽车� � 载重汽车� � //构造方法 public Card() { value = 0;//用创建一章默认纸牌 } //构造方法创建第几张牌 public Card(int n) { //代码省略 } //返回表示纸牌面值的字符串 public String getFace() { return faces[value % faces.length]; } //返回表示纸牌花色的字符串 public String getSuit() { return suits[value % suits.length]; } //返回当前纸牌的花色及面值 public String toString() { return getSuit() + getFace(); } package com.systop.blackjack; public class Card { //牌面值数组 String[ ] faces = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"}; //花色数组 String[ ] suits = {"黑桃", "红桃", "梅花", "方块"}; //牌的总数 int maxCards = faces.length * suits.length; //这张牌的点数 int value = 0; //……………………. } package com.systop.blackjack; public class Player { int winNumber;//赢的次数 int loseNumber;//输的次数 int cash;//玩家手中的现金 //CardsInHand hand;//玩家手中的牌 /** * 构造方法,初始化玩家信息 */ public Player() { winNumber = 0; loseNumber = 0; hand = new CardsInHand(); cash = 10000; } } 荷官类关键代码 /** * 返回这副牌剩余的张数 * @return */ public int getSize() {} /** * 洗牌 */ public void shuffle() {} /** * 随机发牌 * @return */ public Card getCard() {} //测试方法 public static void main(String[] args) { Dealer dealer = new Dealer(); System.out.println(dealer.getCard()); } 玩家手中的牌类 93
本文档为【JAVA面向对象程序设计教案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥17.91 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
北溟愚鱼
暂无简介~
格式:doc
大小:923KB
软件:Word
页数:93
分类:工学
上传时间:2019-01-18
浏览量:34