我有一个界面
public interface GenericRepository<T extends GenericObject> {
String add(T t);
}
我尝试按预期实现它
public class GenericMongoRepository<T extends GenericObject>
implements GenericRepository{
@Override
public String add(T t) {
return null;
}
这是行不通的。该接口(interface)需要这样的实现。
public class GenericMongoRepository<T extends GenericObject>
implements GenericRepository{
@Override
public String add(GenericObject genericObject) {
return null
}
最佳答案
当你实现一个接口(interface)时,你还需要传入 T,它取自实现(替换为类型)。
解决方法:
public class GenericMongoRepository<T extends GenericObject>
implements GenericRepository<T>{
@Override
public String add(T genericObject) {
return null;
}
关于java - 为什么从接口(interface)执行方法时会将参数转换为 Object(或扩展 YourObject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31760428/