如何解决对象的实例变量是否存储在连续内存中
对象的实例变量是否像数组中的元素一样存储在连续内存中?假设您有 Student 类 def ,它具有名称、年龄和成绩实例变量。构造Student类的实例时,实例变量是否存储在连续内存中?
解决方法
总的来说,答案是肯定的;但这是未指定的。有一个图书馆 specifically designed for this,您可以随意使用。
例如对于像这样的类:
{% block content %}
{{ success }}
{% endblock %}
您可以看到它的布局(通过 static class Example {
byte b = 1;
int x = 3;
long l= 12;
}
):
ClassLayout.parseClass(Example.class).toPrintable()
注意字段如何改变它们的位置(使填充更少),以及有 7 个字节的填充。
越深入研究,事情就会变得越来越有趣,例如继承,或由其他对象组成的对象。该库中的示例以这种方式非常丰富。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。