gpt4 book ai didi

java - 当您拆箱对象时,对象数据类型存储在哪里以便编译器可以执行转换?

转载 作者:行者123 更新时间:2023-11-29 06:23:27 26 4
gpt4 key购买 nike

在内部来说,当您将对象转换为强类型对象时,例如:

User u = (User)o;

对象的类型存储在哪里?它是存储在另一个位置还是在存储实际对象的内存块中?

(我对这个话题了解不多,所以我很可能会问一个没有完全意义的问题,但我希望你能理解它的要点)

最佳答案

每个对象的头都包含对最派生实现类的类型的引用。很像 C++ 中的“vtbl”。通常这将是一个“C”结构而不是 Java 对象。我相信 Azul 的(64 位)版本的 Hotspot 使用 32 位紧凑指针来缩短 header 大小。

关于java - 当您拆箱对象时,对象数据类型存储在哪里以便编译器可以执行转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2042869/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com