IntegerCache个人理解

当我们使用Integer包装类的自动拆装箱的时候,如果127<=值>=-128会使用Integer生成好的缓存。

我们直接写代码解读:

上面代码经过编译器编译后:

我们来查看Intger.valueOf()源码:

这里不做过多解析,相信有经验的人都能看懂。

我们继续来看IntegerCache的实现:

但是:缓存的最大值是可通过虚拟机参数配置的,来看如下代码

该方法是Integer里的静态方法,是在System.class的初始化方法触发的。

猜你喜欢

转载自blog.csdn.net/weixin_39032575/article/details/80728730