|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:条记|程序|把持|计划
使用Thread办理paint()和用户输出呼应同时将举行的成绩。
publicclassMycanvasextendsCanvasimplementsRunnable{intr=0;publicMycanvas(){Threadt=newThread(this);t.start();}publicvoidrun(){while(true){r++;if(r>10)r=0;repaint();}}publicvoidpaint(Graphicsg){clear(g);paintAnimation(g,100,10,r);}protectedvoidkeyPressed(intkeycode){switch(getGameAction(keycode)){caseCanvas.UP:y=y-2;break;……}}}
j2me已将stop()办法拿失落(j2se也不再倡始利用),我们使用标识(flag)来办理线程停止的成绩booleanconti=false;……if(cmd.equals("中断")){conti=false;removeCommand(stop);addCommand(start);}elseif(cmd.equals("入手下手")){removeCommand(start);addCommand(stop);conti=true;Threadt=newThread(this);t.start();}……publicvoidrun(){while(conti){r++;if(r>10)r=0;repaint();}}
工夫把持分歧呆板处置速率分歧,为了坚持游戏,画面的分歧性,经由过程工夫把持流程来办理……intrate=50(50毫秒=1/20秒画面重绘一次)publicvoidrun(){longs1=0;longs2=0;longdiff=0;while(conti){s1=Systen.currentTimeMillis();repaint();serviceRepaints();s2=Systen.currentTimeMillis();diff=s2-s1;System.out.rpintln(diff);if(diff<rate){try{Thread.sleep(rate-diff);}catch(Exceptionexc){}}repaint();}}
C#跟java类似,但是在跨平台方面理论上可以跨平台,实际上应用不大,执行性能优于java,跟C++基本一致,但是启动速度还是慢.代码安全,但容易性能陷阱. |
|