出于好奇,我反汇编了 mscorlib.dll 以检查 System.Object 类的实现。
我在其中发现了一些奇怪的东西。
1).
public class Object {
...
protected override void Finalize(){}
...
}
为什么基类中有一个重写的方法?
2) public class Employee {
public void InstanceMethod() {
this.Finalize();
//Does not compile, can i not access protected methods of base class??
}
}
我只是想知道 Object 类中“受保护的 Finalize”方法的用途是什么,为什么编译器会对它进行特殊处理?