V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  promise2mm  ›  全部回复第 4 页 / 共 4 页
回复总数  64
1  2  3  4  
2018-07-20 12:50:31 +08:00
回复了 hugedata 创建的主题 程序员 有感于 Java 中的 Integer,来一个题目。
看了一下 Integer 的 valueOf 源码:
public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}

--> 伪代码:
if i in[-128, 127]
return cache[i + 128];
return new Integer(i);

现在把 cache[130] -> cache[131];
即当 for 循环到 2 的时候, 调用 valueOf(2) == 3
直接跳过了 2.
类加载过程:1 加载 -> 2 链接( 2.1 验证,2.2 准备,2.3 解析) -> 3 初始化 -> 4 使用 -> 5 卸载

1 创建对象时需要 jvm 将对应的类加载到内存中,加载类的过程中有个“ 2.2 链接-准备”阶段, “准备”这个阶段会为这个类对象分配内存,根据成员变量类型分配好每个成员变量需要的空间大小,此时针对成员变量进行初始化,根据变量类型分配对应大小的空间,并初始化默认值。
2 而后的一个过程是“ 3 初始化”, 这个时候才调用类构造器<cinit>().
2018-06-15 16:42:18 +08:00
回复了 Foolt 创建的主题 iOS 求推荐在 iOS 用的 SS 客户端
Wingy+1 简约好用
2016-09-21 13:58:01 +08:00
回复了 goodryb 创建的主题 macOS 如何解决 MacOS Sierra 不支持 PPTP 的问题
一更新 ios10 pptp 的 vpn 都没有了,求搭 L2TP 的 vpn 教程
1  2  3  4  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2396 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 18ms · UTC 15:35 · PVG 23:35 · LAX 07:35 · JFK 10:35
♥ Do have faith in what you're doing.