java static的作用及使用场景
java static的作用及使用场景
一、概述
static是静态修饰符,修饰的静态成员存储在全局区(静态区),与全局变量存储在一起,在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间。
二、作用
- 修饰成员变量(静态变量)
静态成员属于类,被这个类的所有实例所共享
在内存中只有一个拷贝,节省了内存
通过类名可以直接访问,十分方便 - 修饰成员方法(静态方法)
无须每次都要new实例化,因为在编译后就已经分配好了内存,通过 类名.方法 来调用 - 修饰代码块(静态代码块)
当jvm加载类时,静态代码块的内容会先于其他代码块执行,且只会被执行一次
三、使用场景
- 静态变量
如果类对象中有需要共享的成员变量,则可以定义为静态变量 - 静态方法
如果方法内部没有访问到实例数据,则可以定义为静态方法 - 静态代码块
可用于给类初始化