我想创建一个IS A的类,TimerTask也是一个Thread.我假设这个想法没有错.为什么我这样做的原因是我交的"期望输出"一节中提到这里.
Java类不能从两个类继承.那么,我该如何解决这个问题呢?
原因是我在我的问题中提到的帖子.
实际输出: 所有计时器任务都在main方法中执行.在执行所有计时器任务之前,将显示我的主代码的最后一个打印语句.我不希望这样.
预期输出: 我希望main的结束打印语句在其他所有内容之后出现.
扩展TimerTask并实现Runnable
重新生成原始问题后进行编辑:检查/sf/answers/346574161/
你问的是错误的问题.Java中不可能进行多重继承,但这不是您的实际目标.
你想要的是等待多个定时任务完成的能力.有几种方法可以实现这一目标.
可能最直接的是使用a ScheduledExecutionService,它会给你一个Future你可以等待的方式,类似于join你习惯的方法.
另一种方法是使用a CountDownLatch使每个定时器任务在完成时减少锁存器; 然后你可以等待他们完成使用await.
另一个是使用wait和notify原语自己构建同步的策略- 你的问题也不难以这种方式解决.
| 归档时间: |
|
| 查看次数: |
2493 次 |
| 最近记录: |