String&StringBuffer&StringBuilder

String StringBuffer StringBuilder

String --> private final char val[] 使用final定义的char数组
StringBuffer -->AbstractStringBuilder char val[] 没有使用final定义
StringBuilder -->AbstractStringBuilder char val[] 没有使用final定义

String因为是final定义的 因此可以理解成常量 线程安全的
StringBuffer
public synchronized void setLength(int newLength) {
super.setLength(newLength);
}
StringBuffer中的方法都是使用Synchronized定义的,因此线程安全的。
StringBuilder
线程不安全

posted @ 2017-10-09 15:53  爱是用心码请不要说话  阅读(89)  评论(0编辑  收藏  举报