JAVA-初步认识-常用对象API(String类-常见功能-intern方法)
Posted 照破山河万朵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA-初步认识-常用对象API(String类-常见功能-intern方法)相关的知识,希望对你有一定的参考价值。
一.
对于字符串内存进行一个剖析。
现在介绍一个方法,一会儿要用到,但是实际开发并不多见。
intern()可以对常量池进行操作,
s1是个对象,接着用s1对象去调用操作常量池中的方法,调用这个方法返回了池子中的对象。
接着进行对比,s1==s2么?结果是false,跟下图中的写法是一回事。
这里的s1是堆里面的一个对象,我这对象到池子里面去找寻了,池子里没有,然后就在池子里建了一个返回去了。
池子里有就拿回来用,没有就创建一个返回来。
(eclipse看源码,将光标放置在String上,按一下f3直接切换到string.class这个源文件上。按住ctrl,用鼠标对着string,出现两个选项,一个是解释,另一个是实现。点击解释即可)
对于String s1=new String("abc");怎么理解?这里new的是两个对象,"abc"字符串对象是在堆内存中的对象中维护的。而s1.intern是获取池中的数据。池中的数据是共享数据。
以上是关于JAVA-初步认识-常用对象API(String类-常见功能-intern方法)的主要内容,如果未能解决你的问题,请参考以下文章
JAVA-初步认识-常用对象API(集合框架-泛型-泛型方法)
JAVA-初步认识-常用对象API(基本数据类型对象包装类-概述)
JAVA-初步认识-常用对象API(集合框架-泛型-泛型类)
JAVA-初步认识-常用对象API(集合框架-Map集合-hashmap存储自定义对象)