好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

javaee物联网云计算系列培训教材-java基础20.ppt

35页
  • 卖家[上传人]:第***
  • 文档编号:49226487
  • 上传时间:2018-07-25
  • 文档格式:PPT
  • 文档大小:793KB
  • / 35 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 项项目案例:QuickHit第二十章训练的技能点• 面向对象设计的思想 • 使用类图理解类的关系 • 类的封装 • 构造方法的使用 • this、static关键字的使用任务描述• 需求概述–根据输入速率和正确率将玩家分为不同级别–级别越高,一次显示的字符数越多,玩家正确输入 一次的得分也越高–规定时间内完成规定次数的输入,正确率达到规定 要求,则升级 • 玩家最高级别为6级、初始级别一律为1级–用户错误输入一次,游戏结束• 开发工具–JDK 6.0、MyEclipse10问题分析:需要使用到的类4-1• 发现类:–玩家(Player)类–游戏(Game)类–级别(Level)类问题分析:需要使用到的类4-2• 发现类的属性–玩家类(Player)的属性 • 玩家当前级别号(levelNo) • 玩家当前级别积分(currScore) • 当前级别开始时间(startTime) • 当前级别已用时间(elapsedTime)–游戏类(Game)–级别类(Level)的属性 • 各级别号(levelNo) • 各级别一次输出字符串的长度(strLength) • 各级别输出字符串的次数(strTime) • 各级别闯关的时间限制(timeLimit) • 各级别正确输入一次的得分(perScore)问题分析:需要使用到的类4-3• 发现类的方法–玩家类(Player)的方法 • 玩游戏play()–游戏类(Game)的方法 • String printStr() Ø 输出字符串,返回字符串用于和玩家输入比较。

      • void printResult(String out,String in) Ø比较游戏输出out和玩家输入in,根据比较结果输出相 应信息问题分析:需要使用到的类4-4• 优化设计–修改游戏类(Game),添加属性 • 玩家: Player–添加类: LevelParam • public final static Level level[6]问题分析:主要功能分析• 游戏输出字符串–生成字符串、输出字符串、返回字符串–生成长度固定但内容随机的字符串 • 确认输入并输出结果–输入 • 正确、未超时–输出 • 当前级别、当前积分、已用时间–计算玩家的当前级别、当前积分和已用时间 • 玩游戏–6个级别循环实现–每次晋级后积分清零、计时清零问题分析:界面分析• 玩家输入正确与输入超时界面• 玩家输入错误界面项目需求• 游戏根据玩家的级别在控制台输出指定数量字符 • 玩家根据控制台输出来输入相同字符,回车确认 • 确认玩家输入是否正确 • 如果输入错误,输出输入错误提示,游戏非正常结束 • 如果输入正确但超时,输出玩家速度太慢提示,游戏非正 常结束 • 如果输入正确且没有超时,输出玩家的积分、级别和用时 信息。

      继续以上操作 • 规定时间内连续正确输入规定次数,显示升级提示;游戏 重新计时计分,将一次输出更多字符6级玩家闯关成功 ,输出恭喜信息,游戏正常结束开发计划• 用例1:游戏输出字符串[20分钟]• 用例2:确认输入并输出结果[25分钟]• 用例3:玩家玩游戏[25分钟]• 用例4:初始化各个级别的具体参数[15分钟]用例1:游戏输出字符串4-1• 需求说明–在控制台输出随机字符串用例1:游戏输出字符串4-2• 思路分析–生成字符串–输出字符串–返回字符串 • 难点提示–Game类中的player属性,代表玩家,查询player 的级别号,然后根据级别号到LevelParam类中获 取该级别的字符串长度–字符串长度固定可以通过for循环来实现,而随机内 容可以通过获取随机数,而不同随机数对应不同字 符来实现完成时间:20分钟用例1:游戏输出字符串4-3• 参考代码StringBuffer buffer = new StringBuffer(); Random random = new Random(); // 1、通过过循环环生成要输输出的字符串 for (int i = 0; i “); break; case 1: buffer.append(“LevelParam.levels[player.getLevelNo() - 1].getTimeLimit()) { System.out.println(“你输输入太慢了,已经经超时时,退出!“); System.exit(1); }// 计计算玩家当前积积分 player.setCurScore(player.getCurScore() + LevelParam.levels[player.getLevelNo() - 1].getPerScore());共性问题集中讲解n常见调试问题及解决办法n代码规范问题共性问题集中讲解 用例2:确认输入并输出结果4-4• 代码审查–审查确认输入并输出结果代码n互相测试完成的程序功能n测试出的缺陷记录在“常见问题列表中”单元测试用例3:玩家玩游戏3-1• 需求说明–玩家玩游戏 用例3:玩家玩游戏3-2• 思路分析–创建Game对象并传入player属性;–外层循环(循环次数是6,每循环一次玩家级别升 一级) • 晋级; • 积分清零、计时清零; • 内层循环(循环次数是该级别的strTime,每循环一次完 成一次人机交互) Ø游戏输出字符串; Ø玩家输入字符串; Ø游戏判断玩家输入并输出相应结果。

      完成时间:25分钟共性问题集中讲解n常见调试问题及解决办法n代码规范问题共性问题集中讲解 用例3:玩家玩游戏3-3• 代码审查–审查玩家玩游戏代码n互相测试完成的程序功能n测试出的缺陷记录在“常见问题列表中”单元测试用例4:初始化各个级别具体参数5-1• 需求说明–游戏开始之前初始化各个级别的具体参数信息 • 如各级别号 • 各级别一次输出字符串的长度 • 各级别输出字符串的次数 • 各级别闯关的时间限制 • 各级别正确输入一次的得分完成时间:15分钟用例4:初始化各个级别具体参数5-2• 难点提示–使用static修饰属性和代码块 • static属性 Ø属于这个类所有 Ø通过“对象名.static属性名” 、“类名.static属性名” 访问 • static方法 Ø通过“类名.static方法名”和“对象名.static方法名” 访问 • static代码块 Ø主要作用是实现static属性的初始化 Ø当类被载入的时候执行它,且只被执行一次用例4:初始化各个级别具体参数5-3class StaticCodeBlock { static String name = “defname“; static { name = “staticname“; System.out.println(“execute static code block“); } public StaticCodeBlock() { System.out.println(“execute constructor“); } } public class TestStaticCodeBlock { static { System.out.println(“execute static code block in Test“); } public static void main(String[] args) { System.out.println(“execute main()“); new StaticCodeBlock(); new StaticCodeBlock(); new StaticCodeBlock(); } }用例4:初始化各个级别具体参数5-4• 参考代码public class LevelParam { public final static Level levels[]=new Level[6];//对应对应 六个级别级别 static { levels[0]=new Level(1, 2, 10, 30,1); levels[1]=new Level(2, 3, 9, 26,2); levels[2]=new Level(3, 4, 8, 22,5); levels[3]=new Level(4, 5, 7, 18,8); levels[4]=new Level(5, 6, 6, 15,10); levels[5]=new Level(6, 7, 5, 12,15); } }共性问题集中讲解n常见调试问题及解决办法n代码规范问题共性问题集中讲解 用例4:初始化各个级别具体参数5-5• 代码审查–审查初始化各个级别的具体参数代码n互相测试完成的程序功能n测试出的缺陷记录在“常见问题列表中”单元测试集成测试完成时间:25分钟n系统集成后,重新测试系统所有程序功能n测试出的缺陷记录在“常见问题列表中”n修正缺陷后返测,并更新“常见问题列表中”集成测试项目总结n讲解要点:完成情况、技能总结、经验分享、项目收获 n表达要求:清晰流畅、有条理、重点突出项目展示项目展示技能总结• 面向对象设计的思想 • 使用类图理解类的关系 • 类的封装 • 构造方法的使用 • this、static关键字的使用。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.