new String() 은 Heap 영역에 메모리 할당, String 객체 생성, 주소값 할당
String foo = “bar” 는 String.intern() 으로 직접 할당하기 때문에 String객체의 주소값이 아니라 “bar”의 주소값이 할당
new String()으로 한놈도 str.intern()해서 비교하면 True True 나옴
String str = new String("foo");
String str2 = "foo";
System.out.println(str == str2); // false
System.out.println(str.equals(str2)); // true