当变量声明为 static 时,将创建该变量的单个副本并在类级别的所有对象之间共享。静态变量本质上是全局变量。该类的所有实例共享相同的静态变量。
静态变量的要点:
- 我们只能在class-level处创建静态变量。参见这里
- 静态块和静态变量按照它们在程序中出现的顺序执行。
下面的 java 程序演示了静态块和静态变量按照它们在程序中出现的顺序执行。
// Java program to demonstrate execution
// of static blocks and variables
class Test {
// static variable
static int a = m1();
// static block
static
{
System.out.println("Inside static block");
}
// static method
static int m1()
{
System.out.println("from m1");
return 20;
}
// static method(main !!)
public static void main(String[] args)
{
System.out.println("Value of a : " + a);
System.out.println("from main");
}
}
输出:
from m1 Inside static block Value of a : 20 from main
相关用法
- Java Static用法及代码示例
- Java StackTraceElement.getClassName()用法及代码示例
- Java StackTraceElement.getFileName()用法及代码示例
- Java StackTraceElement.getLineNumber()用法及代码示例
- Java StackTraceElement.getMethodName()用法及代码示例
- Java StackTraceElement.isNativeMethod()用法及代码示例
- Java StackTraceElement equals()用法及代码示例
- Java StackTraceElement getClassName()用法及代码示例
- Java StackTraceElement hashCode()用法及代码示例
- Java StackTraceElement isNativeMethod()用法及代码示例
- Java StackTraceElement toString()用法及代码示例
- Java Stack addAll(Collection)用法及代码示例
- Java Stack addElement(E)用法及代码示例
- Java Stack add(Object)用法及代码示例
- Java Stack capacity()用法及代码示例
- Java Stack clear()用法及代码示例
- Java Stack clone()用法及代码示例
- Java Stack contains()用法及代码示例
- Java Stack containsAll()用法及代码示例
- Java Stack copyInto()用法及代码示例
- Java Stack elementAt()用法及代码示例
- Java Stack elements()用法及代码示例
- Java Stack empty()用法及代码示例
- Java Stack ensureCapacity()用法及代码示例
- Java Stack equals()用法及代码示例
注:本文由纯净天空筛选整理自Code_r大神的英文原创作品 Static Variables in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。