【发布时间】:2016-09-02 15:32:34
【问题描述】:
我正在努力解决的一个 OOP 原则是抽象类及其保存成员字段(变量)的能力。
以下面的代码为例(示例1):
public abstract class AbstractClassConstructor {
List mList;
public AbstractClassConstructor(List list) {
mList = list;
}
public Object getListRow(int row) {
return mList.get(row);
}
}
请检查提供相同功能的替代代码(示例 2):
public abstract class AbstractClassGetter {
public abstract List getList();
public Object getListRow(int row) {
return getList().get(row);
}
}
我关心的是example 1还是example 2更易于维护,我也想尽可能地遵循OOP标准。
目前我在示例 1 中看到的耦合比在示例 2 中更多,尽管我没有看到很多其他问题。然而,示例 2 更直接,我喜欢具体实现包含私有字段,AbstractClassGetter 使用方法来获取它。这感觉更好,但我正在努力应用正确的 OOP 原则来帮助我从这个角度了解哪个更好。
【问题讨论】:
标签: java oop variables abstract member