本站消息

站长简介/公众号


站长简介:逗比程序员,理工宅男,前每日优鲜python全栈开发工程师,利用周末时间开发出本站,欢迎关注我的微信公众号:程序员总部,程序员的家,探索程序员的人生之路!分享IT最新技术,关注行业最新动向,让你永不落伍。了解同行们的工资,生活工作中的酸甜苦辣,谋求程序员的最终出路!

  价值13000svip视频教程,java大神匠心打造,零基础java开发工程师视频教程全套,基础+进阶+项目实战,包含课件和源码

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

在方法内创建设置为新对象的实例变量是否比在方法内创建局部变量更节省内存?

发布于2021-10-16 09:30     阅读(305)     评论(0)     点赞(4)     收藏(0)


我觉得这个问题不看任何代码有点令人困惑,所以这是我的例子:

这个:

public class Example {

    public Object foo() {
        return new Object();
    }
}

与这个:

public class Example {

    private Object object;

    public Object foo() {
        object = new Object();
        return object;
    }
}

第二个例子是否只是切换实例变量的内存地址而不是创建一个新的?这样做是否可以节省内存?

我问的原因是因为该方法很可能在程序运行时被调用很多次

谢谢!


解决方案


第二个例子是否只是切换实例变量的内存地址而不是创建一个新的?这样做是否可以节省内存?

不,新实例将在内存中的新位置创建。

在垃圾回收确定没有对现有实例的引用之前,现有内存将不可用。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/303947/0fb9c7c3c240aaee5b58/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0
收藏该文
已收藏

评论内容:(最多支持255个字符)