Java 仅允许实现其他接口的对象的通用接口
我有一个接口Java 仅允许实现其他接口的对象的通用接口,java,generics,interface,Java,Generics,Interface,我有一个接口A,并希望编写一个通用接口B,这样任何实现B的T都必须同时实现A和可比当前不是通用接口 这可能吗?我需要做一个通用的吗? 我曾希望能够写出这样的作品: public interface B<T implements Comparable, A> {} 公共接口B{} 但这似乎不起作用。。。谁能给我指出正确的方向吗 我不相信这是一个重复的问题,已被链接。只是使B扩展a和可比性 public interface A { public void methodA();
A
,并希望编写一个通用接口B
,这样任何实现B
的T
都必须同时实现A
和可比
<代码>当前不是通用接口
这可能吗?我需要做一个通用的吗?
我曾希望能够写出这样的作品:
public interface B<T implements Comparable, A> {}
公共接口B{}
但这似乎不起作用。。。谁能给我指出正确的方向吗
我不相信这是一个重复的问题,已被链接。只是使B扩展a和可比性
public interface A {
public void methodA();
}
public interface B<T> extends A, Comparable<T> {
public T methodB();
}
public class BImpl<T> implements B<T> {
@Override
public T methodB() {
return null;
}
@Override
public void methodA() {
}
@Override
public int compareTo(T o) {
return 0;
}
}
公共接口A{
公共无效方法a();
}
公共接口B扩展了A,可比{
公共T方法b();
}
公共类BImpl实现B{
@凌驾
公共T方法b(){
返回null;
}
@凌驾
公开无效方法a(){
}
@凌驾
公共内部比较(TO){
返回0;
}
}
您在这里寻找的是:
公共接口B{}
请注意,如果任一绑定类型是
类而不是接口
,则它必须是扩展
之后定义的第一个绑定。此外,您不能在多个类上使用多个有界泛型类型(因为Java中没有多重继承)您要找的是B
?如果泛型类型必须是Comparable
和A
?接口B实现了A,Comparable
?@Mike,你能在回答中坚持这一点,这样我可以给你一些分数吗?你确定你的意思是说T
也实现了B
?然后您将寻找接口B
。
public interface B<T extends A & Comparable> {}