千锋教育-做有情怀、有良心、有品质的职业教育机构
static int i = 0 表示定义了一个静态变量 i,该变量会被所有实例共享,而且在类被加载时就会被初始化。
int i = 0 表示定义了一个实例变量 i,该变量只有在创建类的实例时才会被初始化,每个实例都有自己独立的 i 值。
因此,static int i = 0 和 int i = 0 的区别在于作用域和生命周期。静态变量的生命周期是整个程序的运行期间,实例变量的生命周期与实例的生命周期相同。静态变量属于类,可以通过类名直接访问,实例变量属于实例,必须先创建实例才能访问。
上一篇
java线程创建的三种方式下一篇
为什么接口中没有构造方法?相关推荐