java中成员变量、局部变量、全局变量的区别

局部变量在方法内部声明,并且只能在方法内部使用,在外层的方法被调用时被分配内存,请求在方法执行完毕后自动释放内存而消亡,在使用局部变量的时候必须先对其进行初初始化。它是在方法体中定义的变量以及方法的参数,只在定义它的方法内有效。成员变量违背人为初始化,系统将自动根据其所属类型进行初始化,基本数据类型变量量系统赋值0,引用型变量赋值null。成员变量与局部变量就好比正式工与临时工,成员变量就是正式员工,一直存在,与公司同生同灭,局部变量就是临时工,公司请临时工来做一点事情,做完,临时工就没有了,被销毁了。

static静态变量是所有对象共有的变量,它可以在不创建对象的情况下,直接被引用普通变量只有在创建了类的对象后才能被引用。局部变量与成员变量是非静态变量,调用之前必须动态创建,不能直接调用。非静态成员变量是在定义后,电脑随机给一个地址,当程序运行结束时,地址收回。而静态成员变量的不收回,而且一但给了地址它,这个地址就是它的了,不管程序结不结束,它在等待有个语句来释放它,或者关了电脑也就没了。

全局变量也叫成员变量,是指在类中定义的变量;它在整个类中都有效,又可分为类变量和实例变量。类变量又叫静态变量,用static修饰 它可以直接用类名调用,也可以用对象调用 ,而且所有对象的同一个类变量都是共享同一块内存空间的。实例变量不用static修饰,它只能通过对象调用,而且所有对象的同一个实例变量是共享不同的内存空间的。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值