JVM常量池索引值必须大于0才有效,这是为什么?这种设计有哪些优点或独特性?
答案 0 :(得分:1)
constant_pool
索引值零保留用于其他目的。例如,在ClassInfo
结构中:
super_class
:对于一个类,super_class
项的值必须为零或必须是constant_pool
表的有效索引。
我猜他们认为最好用零代表"没有价值"比起(比如)65535.最初的决定是在很久以前做出的。在Java被称为Java之前。
这种设计有哪些优点或独特性?
你需要为" no value"选择某些一些索引值。案例,它只有两个逻辑选择......