欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    24、项目案例3:QuickHit.ppt

    • 资源ID:3407338       资源大小:1.57MB        全文页数:36页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    24、项目案例3:QuickHit.ppt

    项目案例:QuickHit,第二十四章,训练的技能点,面向对象设计的思想 使用类图理解类的关系 类的封装 构造方法的使用 this、static关键字的使用,任务描述,需求概述 根据输入速率和正确率将玩家分为不同级别 级别越高,一次显示的字符数越多,玩家正确输入一次的得分也越高 规定时间内完成规定次数的输入,正确率达到规定要求,则升级 玩家最高级别为6级、初始级别一律为1级 用户错误输入一次,游戏结束 开发工具 JDK 6.0、MyEclipse7.5,问题分析:需要使用到的类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 level6,问题分析:主要功能分析,游戏输出字符串 生成字符串、输出字符串、返回字符串 生成长度固定但内容随机的字符串 确认输入并输出结果 输入 正确、未超时 输出 当前级别、当前积分、已用时间 计算玩家的当前级别、当前积分和已用时间 玩游戏 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(“); break; ,用例1:游戏输出字符串4-4,代码审查 游戏输出字符串,共性问题集中讲解,常见调试问题及解决办法 代码规范问题,共性问题集中讲解,用例2:确认输入并输出结果4-1,需求说明 确认用户输入并输出结果,用例2:确认输入并输出结果4-2,思路分析 确认玩家输入是否正确 如果输入不正确,则直接输出错误信息并退出程序 如果输入正确 如果超时,则直接输出错误信息并退出程序; 如果没有超时 计算玩家当前积分; 计算玩家已用时间; 输出玩家当前级别、当前积分、已用时间; 判断用户是否已经闯过最后一关并处理,完成时间:25分钟,用例2:确认输入并输出结果4-3,参考代码,long currentTime = System.currentTimeMillis(); / 如果超时 if (currentTime - player.getStartTime() / 1000 LevelParam.levelsplayer.getLevelNo() - 1.getTimeLimit() System.out.println(“你输入太慢了,已经超时,退出!“); System.exit(1); / 计算玩家当前积分 player.setCurScore(player.getCurScore() + LevelParam.levelsplayer.getLevelNo() - 1.getPerScore();,共性问题集中讲解,常见调试问题及解决办法 代码规范问题,共性问题集中讲解,用例2:确认输入并输出结果4-4,代码审查 审查确认输入并输出结果代码,用例3:玩家玩游戏3-1,需求说明 玩家玩游戏,用例3:玩家玩游戏3-2,思路分析 创建Game对象并传入player属性; 外层循环(循环次数是6,每循环一次玩家级别升一级) 晋级; 积分清零、计时清零; 内层循环(循环次数是该级别的strTime,每循环一次完成一次人机交互) 游戏输出字符串; 玩家输入字符串; 游戏判断玩家输入并输出相应结果。,完成时间:25分钟,共性问题集中讲解,常见调试问题及解决办法 代码规范问题,共性问题集中讲解,用例3:玩家玩游戏3-3,代码审查 审查玩家玩游戏代码,用例4:初始化各个级别具体参数5-1,需求说明 游戏开始之前初始化各个级别的具体参数信息 如各级别号 各级别一次输出字符串的长度 各级别输出字符串的次数 各级别闯关的时间限制 各级别正确输入一次的得分,完成时间:15分钟,用例4:初始化各个级别具体参数5-2,难点提示 使用static修饰属性和代码块 static属性 属于这个类所有 通过“对象名.static属性名” 、“类名.static属性名” 访问 static方法 通过“类名.static方法名”和“对象名.static方法名” 访问 static代码块 主要作用是实现static属性的初始化 当类被载入的时候执行它,且只被执行一次,用例4:初始化各个级别具体参数5-3,class 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 Level6;/对应六个级别 static levels0=new Level(1, 2, 10, 30,1); levels1=new Level(2, 3, 9, 26,2); levels2=new Level(3, 4, 8, 22,5); levels3=new Level(4, 5, 7, 18,8); levels4=new Level(5, 6, 6, 15,10); levels5=new Level(6, 7, 5, 12,15); ,共性问题集中讲解,常见调试问题及解决办法 代码规范问题,共性问题集中讲解,用例4:初始化各个级别具体参数5-5,代码审查 审查初始化各个级别的具体参数代码,集成测试,完成时间:25分钟,系统集成后,重新测试系统所有程序功能 测试出的缺陷记录在“常见问题列表中” 修正缺陷后返测,并更新“常见问题列表中”,集成测试,项目总结,技能总结,面向对象设计的思想 使用类图理解类的关系 类的封装 构造方法的使用 this、static关键字的使用,作业,课后作业 必做 编写QuickHit项目总结,不少于1000字 选做 教员备课时在此添加内容 提交时间:xxx 提交形式:xxx 预习作业 背诵英文单词 教员备课时在此添加内容,

    注意事项

    本文(24、项目案例3:QuickHit.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开