使变量类级别与最终本地级别相比的优点和缺点

时间:2013-01-02 22:40:50

标签: java variables scope

我已经用Java编写了一段时间了,我必须决定是否要创建一个变量类级别来制作一个最终的局部变量,所以我在我的代码中有它的范围。是否有标准或逻辑来做出这个决定?以某种方式做任何有利有弊吗?

提前感谢您的任何答案。

1 个答案:

答案 0 :(得分:10)

通常情况下,您最好使用最严格的范围。原因是它可以防止你的班级写得不好的用户弄乱其内部并导致错误。

如果我是你,我会尽可能将所有变量设为私人最终和本地变量。如果您必须将其设为非最终版,请将其保密,并且只允许通过setter方法(当然还有getter)访问它。

如果需要,您可以随时打开示波器,但是一旦属性出现并在使用中,就很难将其锁定。

有关更深入的解释,请参阅Effective Java的“最小化类和成员的可访问性”和“支持不变性”。经典阅读