参考:
1、ThreadLocal的应用场景
2、ThreadLocal 详解
补充:
ThreadLocal对象只有一个,不同的线程中均保存ThreadLocalMap对象,可通过currentThread获取当前线程进而获取该线程中的ThreadLocalMap对象,线程中的ThreadLocalMap对象,以ThreadLocal对象为键,所存的value为值。且一个ThreadLocal对象只能为每个线程保存一个线程独享的对象,若想要保存多个,则需要创建多个ThreadLocal对象。