什么时候使用静态变量更好?
使用静态变量的点与最终的点不一样。
最终声明的变量(静态或非静态)不能修改。它们通常用作“参考值”或常量。
因此需要静态变量(和方法)作为“共享内容”。例如,说办公室里的每个人都喜欢喝咖啡。我们每个人都带着自己的咖啡机好吗?还是我们更好地为整个办公室共用一台这样的机器?
显然你想选择共享选项。在编程习惯用法中,这将转化为Office
类中代表唯一CoffeeMachine
的static
变量。
题外话但肯定你不想让这台咖啡机final
。如果有人破坏它会怎样?您需要替换它,从而更改变量。
当只需要一个变量副本时使用静态变量。所以如果你在方法中声明变量没有使用这样的变量,它只会变成本地函数..
声明为静态的变量通常在类的所有实例中共享。
static表示该变量在该对象的所有实例中都是相同的。
主要的例子是一个对象计数器。
class foo{
private static int count = 0;
public foo()
{
count ++;
}
public static getCountOfObj()
{
return count;
}
}
因此,您可以在所有foo-Objects上对其进行编辑。
请不要使用对维基百科 –
的引用好吧,我删除它:) – Baum
我假设你的意思是静态字段。
static
字段与的类相关联,而实例字段被关联到一个对象(又名类实例)。
如果一个字段被标记为final
(适用于实例和静态字段),那么它不能被重新分配。
所以每个人都有自己不同的角色。
这是相当意见的基础和广泛的你不觉得吗? –
当您在某个级别上有一些您需要的值时。例如,如果你有一些静态方法,那么你的值也需要是静态的。 –