java中一共分为3种变量,分别为类变量/实例变量/局部变量
类变量,又叫静态变量,修饰词只能是static,可以不赋值。处于被共享的状态,它的值改变时,所有相关对象的值也会随之改变。
实例变量,又叫对象(大部分情况下对象一般指的就是实例变量),可以不赋值。在调用对象的时候常常用new实现实例化。实例变量一般情况下是独特的,应设为private。使用private、public、protected、default修饰,使用 transient、final 关键字修饰,不可使用 static、abstract、synchronized、strictfp、native修饰 。
局部变量,又叫本地变量或方法变量,必须得赋值。只有final可供修饰。
言简意赅地总结
如果用 static 来声明变量,那这个变量必须且只能是类变量,其定义位置只能在类中、方法或代码块外,处于被共享的状态。
如果没用 static 来声明变量,那这个变量要么是实例变量,要么是局部变量。如果变量是在方法、构造方法、代码块里的,那就是局部变量;反之不在方法、构造方法、代码块里的,那就是实例变量。