前言
在 Java 中,静态 Static 关键字使用十分常见
1. 定义
一种 表示静态属性的 关键字 / 修饰符
2. 作用
共用、共享
能有此作用的原因分析:
- Java中,任何变量 / 代码存储时,都是 在编译时 由系统自动分配内存
- 在静态变量编译后,所分配的内存会一直存在,直到程序退出内存才会释放这个空间
- 类加载时,JVM会把静态变量放到 方法区,被本类 & 本类的所有实例所共用
3. 具体使用
static 静态修饰符可应用于:类、代码块、方法 & 变量。
3.1 静态类
-
定义
使用 static 关键字 修饰、定义 为 静态的 内部类 -
具体使用 & 相关规则
/**
* 1. 静态类的方法 = 静态 / 非静态
* (静态方法可在外层通过静态类调用,而非静态方法必须要创建类的对象后才能调用)
* 2. 只能引用外部类的静态变量(static,即类变量)
* 3. 注:
* a. 默认不持有外部类引用、使用不依赖于外部类(与外层类无绑定):即使无创建外层类的对象,它一样存在
* b. 若一个内部类不是被定义成静态内部类,那么其成员变量 / 方法不能被定义成静态
* c. 静态内部类 & 非静态内部类在创建时有区别,下面会详细说明
*/
// 外部类
public class A {
// 静态内部类
public static class