眉眼山河 2017-03-05 13:19 采纳率: 100%
浏览 1035
已采纳

引用类型在堆栈中的存储过程

引用类型的直接赋值和new后赋值在内存空间中有何变化,如String str="abc";和String str=new String();
str="abc"; 这两者在堆栈空间都是如何存储的?

  • 写回答

4条回答

  • 时间在这里停顿 2017-03-06 01:05
    关注

    String str="abc";会从String常量池中查找,如果存在“abc”,则取出使用,不存在则在常量池中创建该对象常量,然后引用。
    常量池在内存中的方法区中。
    String str=new String();是在堆中直接创建对象。
    str="abc";将该对象的引用指向常量池的“abc”。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?