我想要一个界面:
public interface CarManager<T extends Car> {
public T createCar(Map data);
public T saveCar(T t);
}
这样我就可以:
public class FiatManager<Fiat> implements CarManger {
public Fiat createCar(Map data) {
// ...
}
// ...
}
用于扩展 Car
的各种汽车。
但是,当我尝试时,我得到一个错误,提示我没有实现 createCar
准确的错误信息是:
The class 'FiatManager' must be declared abstract or the method Car createCar(Map data)' must be implemented.
最佳答案
您忘记实现接口(interface):
public class FiatManager implements CarManager<Fiat>
当然,你必须确保Fiat extends Car
。
此外,(如 @Thilo 正确指出的那样)请注意 FiatManager
不再是通用的,因为它已经被称为处理 Fiat
(s) .
关于java - 如何在接口(interface)中参数化,然后在实现的类中指定泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32267334/