类的线程安全定义。怎么才能做到类的线程安全
1.栈封闭 (所有的变量都是在方法内部声明的,这些变量都是处于栈封闭状态(也就是局部变量都是线程安全的))
2,无状态 (没有任何成员变量的类)
3.让类不可变 (String 基本类型包装类 都是不可变的类)
1. 加final 关键字。 对于一个类,所有的成员变量应该都是私有的,同样的只要有可能,变量应该加上 final关键字
2. 根本就不提供修改成员变量的地方,同时成员变量也不作为方法的返回值
4.volatile 保证类的可见性,最适合一个线程写,多个线程读的情景
5.加锁 和 CAS
6.ThreadLocal