使用枚举单例,可解决线程同步和反序列化问题。
public enum Single{
INSTANCE;
// 实例方法
public void m0(){}
public void m1(){}
}
使用
public static void main(String[] args) {
// 开启100个线程测试
for(int i=0;i<100;i++){
new Thread(()->{
System.out.println(Single.INSTANCE.hashCode());
}).start();
}
}