java 成员变量和局部变量

总体分类

如图所示:

变量

  • static修饰的类变量要特别注意,可用于统计总和。
  • 成员变量一般是默认初始化,赋值规则和一般默认初始化一样。
  • 局部变量除形参之外都需显示初始化,否则不可使用。
  • 局部变量和成员变量允许重名(若成员变量不使用this关键字则局部变量覆盖成员变量),不同代码块(或方法)的局部变量也可以重名,成员变量不能重名(当然包括类变量和实例变量互相不能)
  • 当系统加载类或创建类的对象时,自动为成员变量分配内存空间,并指定初始值。
  • 类的所有对象访问类变量时都是访问的同一块内存,强烈不建议使用对象访问类对象(当然有些情况可能是需要的)。
  • 局部变量只有在初始化后才分配内存,且保存在所在方法中的栈内存中(基本数据类型保存值,引用数据类型保存的是地址),无需系统垃圾回收,随方法或代码块的运行结束而结束。
  • 能用代码块局部变量就不要用方法局部变量,能用局部变量就不要用成员变量,减少内存开销,提高程序内聚性。
  • 表示固有属性,共享数据,状态信息等需使用成员变量,以问题而定吧。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值