Java 什么时候使用静态变量更好?
我想知道为什么有时我会看到带有静态变量的代码?什么时候使用静态变量而不是“正常”变量更好?如果它的值没有从一个距离变为另一个距离,那么使用final变量不是更好吗 使用静态变量的要点与最终变量不同 无法修改最终声明的变量(静态或非静态)。它们通常用作“参考值”或常量 因此,静态变量(和方法)需要作为“共享内容”。例如,假设办公室里的每个人都喜欢喝咖啡。每个人都带着自己的咖啡机,我们会更好吗?还是我们最好为整个办公室共用一台这样的机器 显然,您希望选择共享选项。在编程习惯用法中,这将转化为在Java 什么时候使用静态变量更好?,java,final,static-variables,Java,Final,Static Variables,我想知道为什么有时我会看到带有静态变量的代码?什么时候使用静态变量而不是“正常”变量更好?如果它的值没有从一个距离变为另一个距离,那么使用final变量不是更好吗 使用静态变量的要点与最终变量不同 无法修改最终声明的变量(静态或非静态)。它们通常用作“参考值”或常量 因此,静态变量(和方法)需要作为“共享内容”。例如,假设办公室里的每个人都喜欢喝咖啡。每个人都带着自己的咖啡机,我们会更好吗?还是我们最好为整个办公室共用一台这样的机器 显然,您希望选择共享选项。在编程习惯用法中,这将转化为在Off
Office
类中有一个static
变量,表示唯一的CoffeeMachine
离题,但您肯定不想让这台咖啡机成为最终版。如果有人把它弄坏了怎么办?您需要替换它,从而更改变量 当只需要变量的一个副本时,使用静态变量。因此,如果您在方法中声明变量,那么这种变量就没有任何用处,它只会成为函数的局部变量 声明为静态的变量通常在类的所有实例中共享。静态意味着该变量在该对象的所有实例中都是相同的 主要示例是对象计数器
class foo{
private static int count = 0;
public foo()
{
count ++;
}
public static getCountOfObj()
{
return count;
}
}
因此,您可以在所有foo对象上编辑它。我假定您指的是静态字段
静态
字段与类关联,而实例字段与对象关联(也称为类实例)
如果某个字段标记为final
(适用于实例字段和静态字段),则不能重新分配该字段
所以每个人都有自己不同的角色。这是基于观点的,你不这么认为吗?当你在班级层面上有一些你需要的价值观时。例如,如果您有一些静态方法,那么您的值也需要是静态的。请不要使用对Wikipedia的引用好的,我将其删除:)