J2ME:按时器(TimerTask)操纵及初探[Java编程]
本文“J2ME:按时器(TimerTask)操纵及初探[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
近来完成个J2ME游戏,一向以来总想写点东西给大家~因为从前老是在讨取,目前把J2ME的入门知识-按时器的相关知识以及我的一点领会-付出给大家,内容不多只是它的利用,但愿对入门的J2ME开辟者有所帮忙.
首先,说下按时器的基本利用,以下内容摘自NOKIA 论坛里的一篇文章:
《为60系列平台计划Java利用》--按时器
各种按时器让各种利用能便利地筹划任务,而没必要对线程举行调配.利用线程普通需求更为复杂的计划,并需求更多的系统资源,对各种小设备而言,对比奢侈.
成立一个按时器的典范:
public class MyTask extends TimerTask
{
private int iCount;
public MyTask(int aStart)
{
super();
iCount = aStart;
}
public void run()
{
iCounter--;
System.out.println(“Counter is now ” + iCounter);
if (iCounter == 0)
cancel();
}
}
构建一个按时器并向此中增添MyTask:
MyTask myTask = new Mytask(50);
Timer myTimer = Timer();
MyTimer.schedule(myTask, 1000, 20000);
在这个典范中,每20秒就会调用一次MyTask的run()办法.
并不保证按时器任务一定按时履行.各个按时器任务顺次发生.假如此中一个任务需时很长,下一个任务只能在当前任务完成之后再履行.关于循环履行的任务,最好保证run()办法能很快完成.
一个以上地按时器也是大概的,这样便可以将任务分配到几个按时器上.但是,利用多按时器要多加当心,因为每个按时器只运行自己的线程,同步大概是需求的.
上面就是按时器的基本用法,关于一些简单的按时器操作这样做便可以了,直接把要履行的代码放入Run中.关于逻辑构造复杂点的,需求多次履行Run办法的时刻就要另想办法来做了.下面是我利用按时器的一个框架,实际上就是个面向对象的利用,对比简单也好理解,但愿对大家有个帮忙,也但愿有差别见解的朋友共同交流.
一样要有个类来担当TimerTask:
import java.util.TimerTask;
public class GAMETask extends TimerTask {
private GameObject m_Object;
public GAMETask(GameObject object) {
m_Object = object;
}
public void run() {
m_Object.gameTask();
}
}
然后再定义一个GameObject接口:
public interface GameObject {
public abstract void gameTask();
}
以上是“J2ME:按时器(TimerTask)操纵及初探[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |