java中DelayQueue的原理是什么
java中DelayQueue的原理是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
1.构造方法
public DelayQueue() {} public DelayQueue(Collection<? extends E> c) { this.addAll(c); }
构造方法比较简单,一个默认构造方法,一个初始化添加集合c中所有元素的构造方法。
2.接口分析
public interface Delayed extends Comparable<Delayed> { /** * Returns the remaining delay associated with this object, in the * given time unit. * * @param unit the time unit * @return the remaining delay; zero or negative values indicate * that the delay has already elapsed */ long getDelay(TimeUnit unit); }
Delayed 接口有一个getDelay方法接口,该方法用来告知延迟到期有多长的时间,或者延迟在多长时间之前已经到期,是不是很简单。
为了排序Delayed 接口还继承了Comparable 接口,因此必须实现compareTo(),使其可以进行元素的比较。
3.继承体系
public class DelayQueue<E extends Delayed>extends AbstractQueue<E>implements BlockingQueue<E>
关于java中DelayQueue的原理是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。