此代码在 Java <= 1.4 中编译得很好。Java 1.6 母狗发出警告:
“方法 add(Object) 属于原始类型 Collection。对泛型类型 Collection 的引用应参数化”
import org.apache.commons.collections.Buffer;
import org.apache.commons.collections.BufferUtils;
import org.apache.commons.collections.buffer.UnboundedFifoBuffer;
private Buffer connectqueue = BufferUtils.blockingBuffer(new UnboundedFifoBuffer());
...
connectqueue.add(new Conn(this, address, port));
如何在不添加 @SupressWarnings 指令的情况下调整代码以使该警告消失?
问题是 Jakarta Commons Collections Buffer 是非泛型的,但扩展了泛型 java.util.Collection 接口。