给定
public interface Crud<T> {
public T get();
public T add(String json);
public T update(String json);
public T delete(String json);
}
public interface AddressCrud extends Crud<AddressResponse> {
public AddressResponse get();
public AddressResponse add(String json);
public AddressResponse update(String json);
public AddressResponse delete(String json);
}
如果一个类实现了AddressCrud ?我们是否必须实现4个方法或8个方法?
现在如果我们写:
public interface AddressCrud extends Crud<AddressResponse> {
@Override
public AddressResponse get();
@Override
public AddressResponse add(String json);
@Override
public AddressResponse update(String json);
@Override
public AddressResponse delete(String json);
}
我知道@Override用于覆盖方法的实现,但是对于接口,@Override有意义吗?
现在,如果一个类在这种情况下实现了AddressCrad,我们是否必须实现4个方法或8个方法?
更新:供您参考:我正在使用假客户端,我需要为每个客户端声明接口..我有几个假装的客户...接口之间有不同的注释..这就是为什么我试图制作一个我称之为 Crud 的通用接口
你不需要在AddressCrud
中声明任何方法。只需扩展Crud<AddressResponse>
就足够了.这不是泛型的全部意义。其实你连声明AddressCrud
都不需要,只要让类实现Crud<AddressResponse>
就可以了。在任何一种情况下,您都只有 4 种方法来实现
标签@Override
在您的情况下毫无意义。顺便说一句,AddressCrud
的实现类将实现 4 种方法。