成员变量和局部变量的区别
1.定义的位置不一样
成员变量:定义在类体以内,方法体以外
局部变量:方法的申明上(形参),或者方法体内
2.内存的位置不一样
成员变量:在堆区分配内存空间
局部变量:在栈区分配内存空间
3.初始值不一样
成员变量:成员变量的默认有初始值,系统会赋予如下初始值
byte short int long 0
float double 0.0
boolean false
char \u0000
引用类型 null
局部变量:默认没有初始值
4.生命周期不一样
成员变量:随着对象的创建而创建,随着对象的销毁而销毁
局部变量:随着方法的调用而创建,随着方法的销毁而销毁
5.当成员变量和局部变量重名的时候,局部变量优先。(就近原则)