如果一个变量通过多个方法传递,但仅在最后一个方法中使用;将此变量声明为类的属性是否更好?
我觉得这个问题最好通过例子来问,所以:
示例#1
public class eg1 {
private int circleSize;
void a() {
circleSize = ...
b();
}
void b() {
...
c();
}
void c() {
... circleSize ...
}
}
示例#2
public class eg2 {
void a() {
int circleSize = ...
b(circleSize);
}
void b(int circleSize) {
...
c(circleSize);
}
void c(int circleSize) {
... circleSize ...
}
}
是否应该使用某种特定的方法?为什么?
编辑:似乎这个问题是基于情境和意见的。无论采用哪种方式,都提出了一些好的观点。
最佳答案
如果您只想在一个方法中使用该变量,则无需将其设为私有(private),这样会将其公开给所有其他方法。 通过选择传递变量而不是将其设置为私有(private):
- 避免将其暴露给其他方法
- 您的代码更易于阅读,因为您无需查看变量的更改位置
- 避免为类添加不必要的属性
关于java - 通过方法传递类的属性或局部变量哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47913049/