/*
成员变量和局部变量的区别?
1)在类中书写的位置不同
成员变量:类中方法外定义的变量
局部变量:方法定义中,或者是在方法声明上定义的变量
2)在内存中的位置不同:
成员变量:存储在堆内存
局部变量:存在栈内存(跟方法有关)
3)生命周期不同:
成员变量:跟类有关系,当该对象创建完毕,整个类中的变量全部初始化完,等待GC回收
局部变量:跟方法有关,随着方法的调用而存在,随着方法的调用完毕而消失
4)初始化不同:
成员变量: 可以不初始化,系统默认给默认初始化值(引用类型:null,基本类型:根据具体类型)
局部变量:
1)定义变量
在使用之前进行赋值,否则编译不通过
2)直接初始化
注意:如果成员变量名称和局部变量名称一致,在执行的方法,如何访问? 就近原则!
*/
//定义一个类Variable
class Variable{
//成员变量
//int num ;
int num2 = 10 ;
//成员方法
public void show(){
//int num2 = 20 ; //局部变量
//System.out.println(num2) ;//可能尚未初始化变量num2
int num2 = 100 ;
System.out.println(num2) ;
}
}
//定义测试类
class VariableDemo{
public static void main(String[] args){
//需求:访问Variable类中 show()方法
//创建Variable的对象
Variable v = new Variable() ;
v.show() ;
System.out.println("---------") ;
//System.out.println(v.num) ; //0
}
}
成员变量和局部变量的区别
最新推荐文章于 2024-07-24 08:27:53 发布