A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙新强 中级黑马   /  2012-7-18 11:08  /  1164 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

成员变量和局部变量的区别:
我们就好比一个类是一个公司,
成员变量就是这个公司的正式员工,一直存在,与公司同生同灭..
而局部变量就是临时工,公司请临时工来做一点事情,做完,临时工就没有了,被销毁了!
确实有人把成员变量叫成全局变量.那是以这个类作为全部
其实还有一种比成员变量更大的
我建一个公用类,我在里面声明一个静态变量,那么,我在任何地方都可以用它了

简单 知识分享 希望等给大家带来一点帮助

3 个回复

倒序浏览

成员变量和局部变量


1>定义位置
在类中定义成员变量, 在函数中定义局部变量

2>作用范围
成员变量:作用于整个类
局部变量:只能在其声明的方法内部访问。

3>初始化
成员变量:可不用初始化,系统自动初始化
局部变量:必须初始化。

4>内存中位置
成员变量:在堆中,不在被使用,会在不确定的时间内被垃圾回收器回收
局部变量:在栈中,当数据使用完,所占空间会自动释放


class Variable
{
    //s,s1成员变量,定义时可以赋值,也可以不赋值
    String s ="abc";
    String s1 ;
    public void   getVal
    {
      //c为局部变量
        int c = 5;
     }
}
回复 使用道具 举报
zhaosenyang 来自手机 黑马粉丝团 2012-7-18 18:38:29
藤椅
静态修饰的不就是成员变量和成员方法吗?那静态变量还是成员变量吧?
回复 使用道具 举报
zhaosenyang 来自手机 黑马粉丝团 2012-7-18 18:40:21
板凳
静态成员变量应该是在方法区。不能笼统得说成员变量就是在栈内存中吧?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马