成员变量和局部变量

成员变量:
实例变量(不以static修饰)
类变量(以static修饰)。
类变量从类的准备阶段开始存在,知道系统完全销毁这个类,类变量的作用域与这个类的生存范围相同;而实例变量则从该类的实例被创建起开始存在,直到系统完全销毁这个实例,实例变量的作用域与对应实例的生存范围相同。
类.类变量 、 实例.实例变量 、实例.类变量。
当系统加载类或创建该类的实例时,系统自动为成员变量分配内存空间,并在其后,自动为成员变量指定初始值。

局部变量:
形参:方法签名中定义的变量
方法局部变量
代码块局部变量
局部变量除了形参之外,都必须显示初始化,也就是说,必须先给方法局部变量和代码块局部变量指定初始值,否则不可以访问它们。

错误使用变量的害处:
增大了变量的生存时间,这将导致更大的内存开销。
扩大了变量的作用域,这不利于提高程序的内聚性。
如下情形应考虑使用成员变量:
1、如果需要定义的变量是用于描述某个类或某个对象的固有信息时。若这种信息对这个类的所有实例完全相同,是类相关的,如人的眼睛数量,应定义成类变量;若这种信息是实例相关的,如人的身高,体重等,应定义成实例变量。
2、如果某个类中需要以一个变量来保存该类或者实例运行时的状态信息,应使用成员变量。如五子棋的棋盘数组,用于保存五子棋实例运行时的状态信息。
3、如果某个信息需要在某个类的多个方法之间进行共享,则这个信息应该使用成员变量来保存。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值