原文 Page 272 第一段最后一行:
这时候「类变量在方法区」...[此处省略]...笔者已在4.3.1节介绍并验证过。
此处「4.3.1节」有误,不知是否指的是 2.2.5 节部分中的内容。
另外,以「第三次重印版修正」为标准(我使用的是第三次重印版),在本段第二行中原文写到:
而在 JDK 8 及之后,类变量则会随着 Class 对象一起存放在 Java 堆中
根据前述 2.2.5 节描述的内容,方法区用于存储静态变量等数据。JDK 8 中使用元空间实现方法区,而元空间在堆外。在46页,第三段,倒数第四行中有一句描述:「到了JDK7的HotSpot,已经把原本放在永久带的字符串常量池、静态变量等移出」。该句描述并未清除提及移出到哪一确切位置,是否可以认为是都被移出到了堆中?如果是,则建议一并更改 46 页此处描述为:「到了JDK7的HotSpot,已经把原本放在永久带的字符串常量池、静态变量等移出至堆内存中」。
原文 Page 272 第一段最后一行:
此处「4.3.1节」有误,不知是否指的是 2.2.5 节部分中的内容。
另外,以「第三次重印版修正」为标准(我使用的是第三次重印版),在本段第二行中原文写到:
根据前述 2.2.5 节描述的内容,方法区用于存储静态变量等数据。JDK 8 中使用元空间实现方法区,而元空间在堆外。在46页,第三段,倒数第四行中有一句描述:「到了JDK7的HotSpot,已经把原本放在永久带的字符串常量池、静态变量等移出」。该句描述并未清除提及移出到哪一确切位置,是否可以认为是都被移出到了堆中?如果是,则建议一并更改 46 页此处描述为:「到了JDK7的HotSpot,已经把原本放在永久带的字符串常量池、静态变量等移出至堆内存中」。