出於好奇心,我反彙編了mscorlib.dll來檢查System.Object類的實現。System.Object類中的Finalize方法
我發現了一些奇怪的東西。
1).
public class Object {
...
protected override void Finalize(){}
...
}
爲什麼基類中有一個overriden方法呢?
2) public class Employee {
public void InstanceMethod() {
this.Finalize();
//Does not compile, can i not access protected methods of base class??
}
}
我只是想知道在Object類中使用「protected Finalize」方法是什麼,以及它爲什麼得到編譯器的特殊處理?
+1指出反射器的錯誤。我總是盲目地依靠它:)。在使用反射器時直接檢查IL是明智的。 – 2010-01-24 07:34:50