java绑定不匹配:类型A不是TestService类型<T>
我在编译MyService时遇到了这个异常。 这里泛型定义的问题是什么
public interface Entity extends Serializable{
public <T extends Serializable> T getId();
}
public class A implements Entity {
... some code
}
public abstract class TestService<T extends Entity> implements Serializable {
...some code
}
public class MyService extends TestService<A> {
...some code
}
# 1 楼答案
错误只是告诉您,您在这里使用的类型参数T
public abstract class TestService<T extends Entity> implements Serializable {
是扩展Entity
的绑定参数然而,在这里
public class MyService extends TestService<A> {
,您正在指定一个未绑定的参数A我不确定它是否与Java版本5以后的版本有任何关系,您可以参考此Type Erasure