静态变量、实例变量、局部变量的区别?
参考解答
- 静态变量也称为类变量,使用static修饰;它不依赖于某个对象,可通过类名直接访问,也可通过实例对象访问;静态变量属于全类公有,内存中只有一份;静态变量不初始化也有默认值,例:
class A{
static int I;
}
class Test{
public static void main(String[] args) {
A.I++;
new A().I++;
new A().I++;
}
}
- 实例变量也称之为成员变量;它必须依存于某一实例,只能通过实例对象才能访问;实例变量是对象私有的,一个对象的实例变量改变,不影响其他对象;实例变量不初始化也有默认值,例:
class B{
int i;
}
class Test{
public static void main(String[] args) {
B b1 = new B();
B b2 = new B();
b1.i++;
}
}
- 局部变量,只能用于方法内部,使用之前必须初始化,在方法执行时才被创建
class Test{
public static void main(String[] args) {
int i = 0;
System.out.println(i);
}
}