我正在研究我之前在 SO( System.Object 未在 VB.Net 中定义)上看到的一个问题的答案,我发现了一些看起来很奇怪的东西。我一直认为,众所周知,位于“System”命名空间中的“Object”类是在 System.DLL 程序集中定义的,或者至少是在 System.Core.DLL 中定义的。然而,当我开始在对象浏览器中搜索时,我了解到对象实际上是在 mscorlib.dll 中定义的。然而,真正奇怪的是,这个程序集在任何项目的任何地方都没有被引用。为了测试这一点,我创建了一个项目并删除了所有引用:
令人惊讶的是(至少对我而言)这样做并没有破坏任何东西。我仍然可以写一段这样的代码:
Module Module1
Sub test()
Dim x As New Object
End Sub
End Module
没有任何编译错误。有人可以向我解释一下吗?