C#所有值类型都隐式派生自System.ValueType

"C#所有值类型都隐式派生自System.ValueType" 觉得有些不妥

可是, 所有值类型都是密封的, 不可以有继承与被继承,只能实现接口

不是相矛盾了吗? 而且ValueType是引用类型的。 求开导。。。


米琪卡哇伊
浏览 1430回答 2
2回答

largeQ

所有类型的根是obejct~然后~值类型转换到引用类型是~是装箱~  int a = 1;    obejct b =a ; 在堆栈中分配内存 b 。然后你再看一下树形继承图 C#所有值类型都隐式派生自System.ValueType, System.ValueType好像派生自object。然后再按照 int a = 1;    obejct b =a ;理解就ok了 。我说的有点答非所问~你问的问题没有必要去理解~理解装箱和拆箱自然就理解引用类型和值类型之前的关系了~
打开App,查看更多内容
随时随地看视频慕课网APP