.Net程序员们每天都在和Object在打交道
如果你问一个.Net程序员什么是Object,他可能会信誓旦旦的告诉你"Object还不简单吗,就是所有类型的基类"
这个答案是对的,但是不足以说明Object真正是什么
在这篇文章我们将会通过阅读CoreCLR的源代码了解Object在内存中的结构和实际到内存中瞧瞧Object
Object在内存中的结构
为了便于理解后面的内容,我先用一张图说明Object在内存中的结构
.Net中的Object包含了这三个部分
指向头部的指针
指向类型信息的指针
字段内容
微软有一张更全的图(说明的是.Net Framework的结构,但是基本和.Net Core一样)