Java中的静态变量_静态方法_静态块与静态类

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java中的静态变量、静态方法、静态块与静态类

在Java中,static是一个关键字,我们不能用它来作为类名或包名,static主要有四种用途,即作为静态变量、静态方法、静态块和静态类。

1、静态变量Java static variables

静态变量就是类变量,它并不属于类的实例,仅属于类本身。在所有能访问该类的地方,也就可能访问或修改该变量,它是非线程安全的,因此,静态变量通常是和final关键字结合在一起,用来标识该变量是一个公共资源和常量。

只要静态变量不是private私有的,那么我们可通过ClassName.variableName的方式进行访问。

2、静态方法Java static methods

静态方法与静态变量一样,也是属于类本身而不属于类的实例对象。在一个静态方法中,除了局部变量外,它能访问的外部变量也必须是静态的,能访问的外部方法也必须是静态的,实例变量和实例方法均不能访问。

3、静态块Java static Block

静态块是由一些语句组成的段落,它在类被加载进内存时执行,且无论类被使用多少次它都只会执行一次。一个类的静态块可以有多个,其执行顺序由它在代码中的顺序决定。

4、静态类Java static methods

静态类都是内部类,static不能用于修饰顶级的类。对于单例模式用静态类来实现就是一个很不错的选择。

5、完整示例

//static variable example

private static int count; //kept private to control it's value through setter public static String str;

public int getCount() {

return count;

}

//static method example

public static void setCount(int count) {

if(count > 0)

StaticExample.count = count;

}

//static util method

public static int addInts(int i, int...js){

int sum=i;

for(int x : js) sum+=x;

return sum;

}

//static class example - used for packaging convenience only

public static class MyStaticClass{

public int count;

}

}

相关文档
最新文档