【发布时间】:2022-01-21 01:35:54
【问题描述】:
我有 Employee 类和扩展 Employee 类的 3 个类。
我也有EmployeeService 接口,我希望只有一个save 方法来处理保存每种类型的员工。所以我认为它可以使用泛型来解决。
这是我在EmployeeService界面中尝试的:
public interface EmployeeService {
<SubRequestT extends Employee>EmployeeResponse save(SubRequestT requestT);
}
以及提供实现的类:
@Service
public class EmployeeServiceImpl implements EmployeeService {
// So here in argument i want to have to put any kind of Employee, for example:
@Override
public EmployeeResponse save(OfficeEmployee requestT) {
// Logic for saving employee
return null;
}
}
但是当我从 Employee 类型更改为任何其他类型时,例如从 Employee 扩展的 OfficeEmployee,编译器给我一个错误。解决这个问题的最佳方法是什么?
【问题讨论】:
-
使用Employee有什么问题?
标签: java generics inheritance