问题主要与继承和扩展的工作原理有关。
我目前有以下内容:
public class Client extends BaseClient { ... }
和
public class BaseClient extends MinimalisticClient { ... }
它们之间的主要区别在于它们持有的参数(数据)的数量(从数据库中获取)。
我想做的是为每个单独的接口(interface)创建一个只包含 getter 的接口(interface)。
所以,它会是这样的:
public interface IMinimalisticClient { getters }
public class MinimalisticClient implements IMinimalisticClient { ... }
public interface IBaseClient extends IMinimalisticClient { the extra getters }
public class BaseClient extends MinimalisticClient implements IBaseClient { ... }
public interface IClient extends IBaseClient { the extra extra getters }
public class Client extends BaseClient implements IClient { ... }
以BaseClient为例。当我扩展 MinimalisticClient 时,我默认将 IMinimalisticClient 实现到 BaseClient 中。但是,我还实现了 IBaseClient,它也扩展了 IMinimalisticClient。这是可以接受的吗?我在做一些完全愚蠢的事情吗?
顺便提一下,我之所以按照我介绍的方式进行操作,只是因为该软件将在廉价的 Android 设备上运行,而且我必须尽可能多地管理内存使用。
最佳答案
这很好用,但您应该问问自己为什么需要这些接口(interface)。如果您没有接口(interface)的多个实现,那么您似乎没有理由首先拥有它们。
关于Java:由于继承,多次实现相同的接口(interface)。可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48645060/