1.String 是字符串常量 有final修饰 不可变的,因此线程安全
2.StringBuffer 、StringBuilder 继承AbastractStringBuilder 是字符串变量
3.StringBuffer 源码里加了synchorinized 同步锁 因此线程安全
4.StringBuilder 并没有加同步锁 如果不是多线程StringBuilder 效率更高
5.使用String每次改变对象时相当于从新new了一个对象 指针指向新的String对象 当无用引用过多时JVM的GC就开始工作,影响速度