接口重写其他接口的方法



给定

   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 种方法。

最新更新