我有一个抽象 java 类,它实现了它的几个方法,但没有实现其他方法。在它实现的方法中,它使用私有属性变量。使用的变量也需要在子类中使用。
据我所知,我的选择是:
- 在子类和超类中都声明私有变量
- 将抽象类中当前实现的方法的实现推迟到子类中
还有其他选择吗?其中哪一个更有意义?为什么?
问题是你想如何维护你的状态:如果不关心值存储在哪里,你可以添加一个private
成员“在另一个之上”,并使用它而不是超类中的成员。如果您希望超类中的某些方法和子类中的某些方法访问相同的状态,则需要更改可见性:
您可以将变量声明为protected
,使其在子类中可访问,或实现访问器方法,甚至使其public
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)