ThreadLocal类的重写初始化方法

重写初始化方法使用,使其能够创建默认初始值

用一个内部类重写他的init方法

ThreadLocal类的重写初始化方法_第1张图片

import java.util.HashMap;
import java.util.Map;
public class MyExecuteContext {
    //让ThreadLocal里面有一个默认的类即在初始化时 new 出来
    protected final static ThreadLocal> threadContext = new MapThreadLocal();
    private static class MapThreadLocal extends ThreadLocal> {
        @Override
        protected Map initialValue() {
            return new HashMap<>();
        }
    }
    public static void main(String[] args) {
        Map objectObjectMap = threadContext.get();
        System.out.println(objectObjectMap==null);
    }
}

 

你可能感兴趣的:(ThreadLocal类的重写初始化方法)