不能。因为 static 声明的结构随着类的加载而加载,生命周期早于非 static 的变量。 反之,在非 static 的环境中,是可以访问早加载的 static 的变量的。
static 变量在 Java 中是属于类的,它在所有的实例中的值是一样的。当类被 Java 虚拟机载入 的时候,会对 static 变量进行初始化。如果你的代码尝试不用实例来访问非 static 的变量, 编译器会报错,因为这些变量还没有被创建出来,还没有跟任何实例关联上。
不能。因为 static 声明的结构随着类的加载而加载,生命周期早于非 static 的变量。 反之,在非 static 的环境中,是可以访问早加载的 static 的变量的。
static 变量在 Java 中是属于类的,它在所有的实例中的值是一样的。当类被 Java 虚拟机载入 的时候,会对 static 变量进行初始化。如果你的代码尝试不用实例来访问非 static 的变量, 编译器会报错,因为这些变量还没有被创建出来,还没有跟任何实例关联上。