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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘源 中级黑马   /  2012-8-16 18:53  /  1423 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 刘源 于 2012-8-16 22:12 编辑

内部类访问局部变量时
问题1,为什么一定要用final修饰啊,加了个final修饰后,那这个局部变量会有什么变化啊?
问题2,final修饰的局部变量,什么时候加载进内存啊,是和普通变量一样吗?还是和与static修饰的成员变量一样。?
"问题已解决"

评分

参与人数 1技术分 +1 收起 理由
田建 + 1

查看全部评分

1 个回复

倒序浏览
本帖最后由 王健 于 2012-8-16 19:53 编辑

1:因为局部变量使用完就会立马从内存中消失,而我们得局部类对象还存在,
而且里面还在使用这个变量,所以,要求,被局部内部类访问的变量用final修饰;
2:被修饰为final,而非static的时候,属于类的实例对象的资源,当类被加载进内存的时候
当类被实例化的时候这个属性才被分配内存空间,而实例化的时候同时执行了构造函数,
所以属性被初始化了,也就符合了当它被分配内存空间的时候就需要初始化,以后不再改变的条件.

评分

参与人数 1技术分 +1 收起 理由
田建 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马