- 0
- 0
- 约1.27千字
- 约 2页
- 2026-05-27 发布于北京
- 举报
privatestaticfinallongvalueOffset;
static{
try{
valueOffset=unsafe.objectFieldOffset
(AtomicInteger.class.getDeclaredField(value));
}catch(Exceptionex){thrownewError(ex);}
}
privatevolatileintvalue;
类初始化的时候,来进行执行的,valueOffset,value这个字段在AtomicInteger这个类中的
偏移量,在底层,这个类是有自己对应的结构的,无论是在磁盘的.class文件里,还是在JVM
内存中
大概可以理解为:value这个字段具体是在AtomicInteger这个类的哪个位置,offset,偏移量,
这个是很底层的操作,是通过unsafe来实现的。刚刚在类初始化的时候,就会完成这个操
作的,final的,一旦初始化完毕,就不会再变更了
intl;
do{
//会用getIntVolatile方法
//
原创力文档

文档评论(0)