彻底理解String与new String()区别

想理解这两个的区别,需要了解常量池机制: String str=“ab” : 不需要new 就可以产生对象的,它创建对象时,首先在常量池中找有没有值为"ab"的对象,如果有,就直接把引用(意思就是str)指向该值,不需要重新new一个对象;如果没有,就在常量池中new一个值为"ab"的对象 String str=new String(“ab”): 和普通对象一样,每次new,都会在堆中重新创建一个
相关文章
相关标签/搜索