共享元对象,放到一个池子里面

池化思想,提前几个,重复利用,

String使用的就是享元(常量池)

s3.intern() 内部指向常量池的引用,****intern就能拿到常量池的引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class TestString {
public static void main(String[] args) {
String s1 = "abc";
String s2 = "abc";
String s3 = new String("abc");
String s4 = new String("abc");

System.out.println(s1 == s2); //true
System.out.println(s1 == s3); //false
System.out.println(s3 == s4); //false
System.out.println(s3.intern() == s1); //true
System.out.println(s3.intern() == s4.intern()); //true
}
}