我已经用Java编写了一段时间了,我必须决定是否要创建一个变量类级别来制作一个最终的局部变量,所以我在我的代码中有它的范围。是否有标准或逻辑来做出这个决定?以某种方式做任何有利有弊吗?
提前感谢您的任何答案。
答案 0 :(得分:10)
通常情况下,您最好使用最严格的范围。原因是它可以防止你的班级写得不好的用户弄乱其内部并导致错误。
如果我是你,我会尽可能将所有变量设为私人最终和本地变量。如果您必须将其设为非最终版,请将其保密,并且只允许通过setter方法(当然还有getter)访问它。
如果需要,您可以随时打开示波器,但是一旦属性出现并在使用中,就很难将其锁定。
有关更深入的解释,请参阅Effective Java的“最小化类和成员的可访问性”和“支持不变性”。经典阅读