Java 底层知识 --- 内存模型之常见考题
内存模型之常见考题
问题一:不同JDK 版本直接intern () 方法的区别 - JDK6 JDK VS JDK6+ ?
选择Edit Configurations... ,并且选择需要运行的当前类
执行
此异常出现是在JDK 6
JDK 6+ 就不会出现 ,字符串常量池,不受永久带限制
JDK 7 可以正常执行
JDK 8 可以正常执行,但是提示
== 比较的内存地址
一、
String s = new String ("a");
s.intern();
String s2 = "a";
System.out.print(s == s2);
二、
String s3 = new String("a")+new String("a");
s3.intern();
String s4 = "aa"';
System.out.print(s3 == s4);
当JDK版本 高于6 时 结果是:一、输出 false 二、输出true
当JDK版本 为6 时 结果是:一、输出 false 二、输出false