您的位置:首页 > 编程语言 > Java开发

java中String的特点,字面对象和构造方法的区别

2015-12-29 20:23 537 查看
java支持两种常见的方法创建字符串

String s1 = new String("abc");
String s2 = "abc";
两种方法都有什么区别呢 内存图如下



1,S1首先查看字符串 abc 是否存在字符串常量池中,如果存在则直接指向,不存在,则创建一个

2,S2 查看常量池中 abc 是否存在,结果已经存在了,就直接指向引用了

区别
前者s1 创建了两个对象 堆内存中的new String 和 字符串常量区的 abc
s2只创建了一个对象 abc 如果存在 abc 那就一个对象也没创建

同时 String s = "abc";
字符串 abc作为一个对象也可以调用String类的方法
本文出自 “似水流年” 博客,请务必保留此出处http://firrty.blog.51cto.com/4028329/1729726
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: