本帖最后由 java627 于 2016-7-8 17:06 编辑
刚接触的马友们有福利啦!今天来说说Java中静态变量,成员变量和局部变量的区别。大体给它们划分了几个不同点。首先,先两两比较。拿静态变量和成员变量做对比,一是它俩所属不同,静态变量属于类,成员变量属于对象;二是内存中位置不同,静态变量存储于方法区的静态区,成员变量在堆内存。三是在内存中出现的时间不同,静态变量随着类的加载而加载,随着类的消失而消失。成员变量随着对象的创建而存在,随着对象的消失而消失。四是调用不同,静态变量可以通过类名调用,也可以通过对象调用。成员变量只能通过对象名调用。
接着讨论局部变量,局部变量出现的位置在类中的方法定义中或者方法生命上,它跟随方法进内存的栈里,随着方法的调用而存在,方法调用完毕结束后就消失,还有就是局部变量在使用之前必须先赋值,然后才能调用。
|
|