V2EX Sunhcer
 Sunhcer's recent timeline updates
Sunhcer

Sunhcer

V2EX member #550532, joined on 2021-07-10 10:28:51 +08:00
Sunhcer's recent replies
@lazyfighter 接口平台网关那边不走请求头鉴权,就不想给加,所以想直接在业务代码这边处理,比如,比如搞个 filter 识别特定 URL 增加请求头嘛
@night98 在业务层实现一个 filter 吗
@weivi 同一种来源的数据在不同阶段的不同呈现,这样说更准确; 来源上是一样,但数据不一样:打个比喻就像是,一个是带占位符的短信模板,一个是填充好的短信
@ikas 厉害了,我在这里找到一句话似乎可以终结疑问;
https://docs.oracle.com/javase/specs/jvms/se18/html/jvms-5.html

The Java Virtual Machine maintains a run-time constant pool for each class and interface (§2.5.5).
Java 虚拟机为每个类和接口维护一个运行时常量池; 那就是独立的喽
大佬,喝冰可乐!
Apr 27, 2022
Replied to a topic by Sunhcer Java 元空间的运行时常量池究竟是全局一个还是每个 class 独立一个?网上众说纷纭,该如何求证?
@weivi 是不同的,我跟倾向于这种说法:
class 文件常量池存储的是当 class 文件被 java 虚拟机加载进来后存放在方法区的一些字面量和符号引用,字面量包括字符串,基本类型的常量。
运行时常量池是当 class 文件被加载完成后,java 虚拟机会将 class 文件常量池里的内容转移到运行时常量池里,在 class 文件常量池的符号引用有一部分是会被转变为直接引用的。
@weivi 类文件常量池跟运行时常量池不同吧
@JasonLaw 感谢回复,我浏览了对于方法区的描述,这个版本的描述是否适用于 jdk8 呢?按文档的说法,常量在方法区,8 中方法区的实现是元空间,那就是说运行时常量池还是在元空间的嘛

@xuanbg 权威,看不太懂,我这样阐述是否有问题呢?元空间内存角度上是一片动态扩展的内存区域,不同的类加载器在这片内存空间划分各自的领域,同一个类加载器加载的 class 元空间都在同一片区域,但是这里没有找到关于运行时常量池的描述,依旧不确定是一个还是多个
@xuanbg 我可以参考什么文献来证实这种说法吗?其实对于运行时常量池在堆区还是元空间也比较迷惑
6 楼猜想错了,参考《深入剖析 Java 虚拟机:源码剖析与实例详解(基础卷)》初步验证了 3 楼大佬的说法
研究了一波 class ,就整个 class 体系而言,(对普通类型而言) IntanceKlass 持有元信息和 class 对象,而真正的类对象 =java 代码中获取到类对象 InstanceMirrorKlass ,是存放在堆区的, 然后实例对象 oop 也是存放在堆区,这样说才准确吧?
@zmal
About     Help     Advertise     Blog     API     FAQ     Solana     1117 Online   Highest 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 22ms UTC 18:24 PVG 02:24 LAX 11:24 JFK 14:24
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86