【发布时间】:2011-08-28 19:22:00
【问题描述】:
org.apache.commons.collections.buffer 包中的 Java 类 CircularFifoBuffer 是非泛型的,可以存储任何类的对象。
我想创建一个这样的通用版本,它只能保存类 T 的对象。我的第一个想法是扩展 CircularFifoBuffer 并简单地编写一个新的“添加”方法:
public class CircularFifoQueue<T> extends CircularFifoBuffer {
public boolean add(T data) {
return super.add(data);
}
}
但是,这保留了旧的“添加”方法,允许添加任意类的对象。有没有办法使用继承而不是组合(这样我就不必重新实现 CircularFifoBuffer 的所有方法)但阻止该类的用户添加非 T 对象?
【问题讨论】:
标签: java list collections queue