1. 定义的位置
成员变量:在类中方法外面
局部变量:在方法中或者方法的参数列表中
2. 在内存中的位置
成员变量:在堆内存中
局部变量:在栈内存中
3. 生命周期
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
4. 初始值
局部变量:没有默认初始值,使用之前需要赋值
成员变量:有默认初始值
public class Demo {
byte Byte;
short Short;
int Int;
long Long;
boolean Boolean;
float Float;
double Double;
char Char;
String string;
@Override
public String toString() {
return "Byte=" + Byte +
", Short=" + Short +
", Int=" + Int +
", Long=" + Long +
", Boolean=" + Boolean +
", Float=" + Float +
", Double=" + Double +
", Char=" + Char +
", string=" + string;
}
public static void main(String[] args) {
Demo demo = new Demo();
System.out.println(demo);
}
}
Byte=0, Short=0, Int=0, Long=0, Boolean=false, Float=0.0, Double=0.0, Char= , string=null