区别1:常量池的符号引用 有所不同
今天在下面链接中 学习并测试 string在不同创建方式下 产生几个对象的问题
流程图详解 new String(“abc“) 创建了几个字符串对象_"new string(\"abc\")创建了几个对象"_程序员囧辉的博客-CSDN博客
看下面例子(取自上面链接):
正确的结论是,jdk6环境下,结果是false; jdk7/8环境下,结果是true
我测试时jdk版本是8,而我在@Test单测时,结果是false,使用main方法测试时,结果是true
不了解底层到底是什么产生了问题,@Test单测时,到底是intern()没生效,还是常量池的符号引用的解析与正常的不一致,这个还有待了解
最后我只能选择使用main方法完成我关于string的测试
区别2:线程未执行完时,@Test单测不会等待,main看情况
详细的看下面链接
@Test单测方法和main方法的区别_test和main的区别_任意放逐的博客-CSDN博客