我无法使用.Net反射器找到这些类型之间的关系.任何的想法?
众所周知,int有ToString()覆盖ToString()基类型方法的方法Object.
对于以下代码,
int x = 100;
object y = (object)x;
Console.Write(y.ToString());
Run Code Online (Sandbox Code Playgroud)
(1)谁叫ToString()?int还是对象?为什么?
(2)我们如何查看/查看真相?通过任何调试/工具?
我有以下方法
private void AM(object[] x)
{
}
Run Code Online (Sandbox Code Playgroud)
当我们这样称呼时:
int[] x = new int[1];
AM(x);
Run Code Online (Sandbox Code Playgroud)
我们得到一个编译错误,比如"无效参数","无法从int []转换为object []".
但是,如果我们有一个参数(对象y),我们可以将输入int作为输入参数.
我的问题是:为什么微软以不同的方式设计它们?
MSDN:
弱引用对于使用大量内存的对象很有用,但如果它们被垃圾回收回收,则可以轻松地重新创建.
和
当您使用弱引用时,应用程序仍然可以获得对该对象的强引用,从而阻止其被收集.但是,在重新建立强引用之前,始终存在垃圾收集器首先到达对象的风险.
我的问题是:为什么可以轻松地重新创建WeakReference对象?GC发布后,与普通对象相比,可以轻松地重新创建吗?