首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何动态调度不同的java类?

如何动态调度不同的java类?
EN

Stack Overflow用户
提问于 2015-06-29 14:13:37
回答 3查看 1.2K关注 0票数 0

我正在尝试编写一个调度程序类,它可以在某个用户指定的计时器上调度不同的类。我在用

代码语言:javascript
复制
ScheduledExecutorService

代码语言:javascript
复制
ScheduleAtFixedRate

去做日程安排。我正在苦苦挣扎的是如何告诉调度程序要调度哪个Java类。

这样做的想法是调用调度程序,构造函数中将有一些字符串,这将是您想要调度的java类的名称。我在使用上述字符串时有问题

代码语言:javascript
复制
ScheduleAtFixedRate

因为它需要一个可运行的。有什么想法或建议吗?

EN

Stack Overflow用户

发布于 2015-06-29 14:26:32

假设您有两个类

代码语言:javascript
复制
public class ABC  extends TimerTask{ 
@Override
public void run()
{/*some code*/}


public class XYZ extends TimerTask{
@Override
public void run()
{/*some code*/}
}

然后从某个班级

代码语言:javascript
复制
public class ScheduleTheTask{

public static void main(String[] args) {
begin("com.ABC",new Date(),3000);
begin("com.XYZ",new Date(),3000);
}

   public static void begin(String task , Date startTime,long timeInMillisecons)


     {
                Class<?> clazz = Class.forName(task);
//BIG assumption that only TimerTask  subclasses would be passed add a instanceof check
                TimerTask taskObj= (TimerTask)clazz.newInstance();
                setStartTimeAndInterval();
                Timer timer = new Timer();
                timer.scheduleAtFixedRate(taskObj, startTime,timeInMillisecons);

            }
}
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31117970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档