出于好奇,我反汇编了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类中的“protected Finalize”方法有什么用,为什么编译器要对它进行特殊处理?