我有两个班级Foo1和Foo2非常相似的领域。我有一个接受Foo1类的转换方法,如下所示public static <T> T convert(IFoo1 foo1, Class<T extends IFoo2> clz) { T foo2 = clz.newInstance(); // Setter methods return foo2; }但我收到错误:令牌“扩展”的语法错误,预期类Foo1和Foo2实现接口IFoo1和IFoo2.
1 回答
拉莫斯之舞
TA贡献1820条经验 获得超10个赞
您得到的错误是因为您的泛型使用了不正确的边界。
将您的方法声明更改为:
public static <T extends IFoo2> T convert(IFoo1 foo1, Class<T> clz) {
T foo2 = clz.newInstance();
....
return foo2;
}
您可能已经想到了另一种类型的边界。
添加回答
举报
0/150
提交
取消