我还是有点困惑.. 几天前我问了一个问题,如果派生类实例引用它的基类...我得到一个答案“不,它没有,派生类只是继承并包含所有基础成员... 如果这样是这样,那么派生类对象如何保存在内存中?
派生类对象的地址是否提供任何信息。关于它的基类?
答案 0 :(得分:4)
这是显示对象内存表示的article。基础和派生类的字段存储在一起。方法被放入方法表结构
答案 1 :(得分:2)
实际(物理)布局如何是“实施细节”。框架(CLR)可以指定一些细节,语言根本不这样做。
但你可以想象它看起来像[[base class members][derived class members]]
对实例的引用只会指向基类的起始地址。
参考的类型(基础或派生)决定哪个部分是“可见的”。