所以我在Xamarin項目工作和整個這個小一點的「功能」來了:爲什麼重寫方法與重寫方法不完全相同?
public override void Draw(CGRect rect)
{
base.Draw(rect);
}
在視圖(這是什麼究竟是無關的問題)的地方繪製一個黑盒子。
鑑於此代碼:
//public override void Draw(CGRect rect)
//{
// base.Draw(rect);
//}
繪製的透明箱(再次該方法的精確結果是無關的問題)。
現在我想知道(在C#的水平上)這兩個實現有何不同。根據我的理解,這兩段代碼在功能上是相同的,但顯然不是,因爲它們會導致2種不同的結果。
這是怎麼回事?
第二個是未註釋的,並且根本沒有編譯,這意味着它不存在於執行代碼中。 – HimBromBeere
是的,但在我的理解中,這些應該在功能上是相同的,因爲我用它自己覆蓋了一個基本方法。 – vrwim
我認爲被問到的問題是爲什麼簡單地調用base.Draw在重寫的方法中沒有任何更改會以某種方式得到不覆蓋它的不同結果。 – Tofystedeth