那你觉得怎么样?
我的Java讲师说,应该始终将属性声明为私有,并且没有理由为什么应该以其他方式进行。我立即开始考虑继承,它会如何影响。
答案 0 :(得分:2)
您的意思是声明字段是私有的吗?如果是这样,我同意你的讲师,虽然“没有理由”可能有点矫枉过正。非常偶然的原因使用非私有字段 - 例如在私有嵌套类中。
但是,是的,在一个简单的超类/子类关系中,我将使用getter / setters而不是使字段受到保护。它将实现与类公开的 API 分开 - 甚至分离到它的子类。
答案 1 :(得分:0)
Private会阻止扩展原始类的类直接访问它。一般来说,如果您希望扩展原始类并希望继承类能够直接修改该特定类成员,那么我认为protected是声明变量的更好方法。