变量的生命周期和选用

1.变量的生命周期

变量的生命周期:是指一个变量被创建并分配内存空间开始,对该变量被销毁并清除其所占用内存空间的过程

2.变量的作用域
变量的作用域:指的是变量的存在范围,只有在这个范围内,程序代码才能访问它,当一个变量被定义时,它的作用域就被锁定了

3.变量的作用域决定了变量的生命周期,说明作用域不同,生命周期就不一样
4.变量的生命周期及在内存中的位置
这里写图片描述
5.说明:

局部变量定义后,必须显示初始化后才能使用,因为系统不会为局部变量执行初始化操作,这就意味着定义局部变量后,系统并未为这个变量分配内存空间。直到程序为这个变量赋值时,系统才会为局部变量分配内存,并将初始值保存到栈内存中。局部变量不属于任何类或实例,因此它总是保存在其所在方法的栈内存中。
1)基本数据局部变量:直接把这个变量的值保存在该变量所对应的内存中
2)引用数据局部变量:这个变量内存中存的是地址,通过该地址引用到该变量实际引用堆里的对象,栈内存中的变量无需系统垃圾回收,其往往随方法或代码块的运行结束而结束

6.什么时候使用成员变量和局部变量

1.考虑变量的生存时间,这会影响内存开销
2.扩大变量作用域,不利于提高程序的高内聚
在开发中,应该尽量缩小变量的作用范围,如此在内存中停留时间越短,性能也就越高。不要动不动就是用static修饰,一般,定义工具方法的时候、static方法需要访问的变量或该变量属于类,此时才使用static修饰。也不要动不动就使用成员变量,因为存在着线程不安全问题,能使用局部变量就使用局部变量

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值