我是否以错误的方式使用泛型? 对不起,我是仿制药的新手。
public interface Stream {
public <T extends InputStream> void read(T in);
}
public class StreamReader implements Stream {
@Override
public <T extends InputStream> void read(T in) {
ByteInputStream bis = (ByteInputStream) in;
...
}
答案 0 :(得分:4)
我认为你正在寻找这个:
public interface Stream<T extends InputStream> {
public void read(T in);
}
public class StreamReader implements Stream<ByteArrayInputStream> {
@Override public void read(ByteArrayInputStream in) {
...
}
}
答案 1 :(得分:-1)
您可以从以下位置更改方法:
public <T extends InputStream> void read(T in);
要:
public <T extends InputStream> void read(<T extends ByteInputStream> in);