2011-04-14 67 views
0

我的情況解決方法是這樣的:與基本類型

public class InheritedClass : BaseClass 
{ 
    public override void SomeMethod() 
    { 
     AnotherMethod(); 
    } 
    public override void AnotherMethod() 
    { 
    } 
} 

public class BaseClass 
{ 
    public virtual void SomeMethod() 
    { } 
    public virtual void AnotherMethod() 
    { } 
} 

那麼哪種方法,當我打電話InheritedClassInstance.SomeMethod叫?它叫InheritedClassInstance.AnotherMethod還是BaseClass的AnotherMethod

回答

2

它調用InheritedClassInstance.AnotherMethod()

如果你想讓它調用基類AnotherMethod()你會寫base.AnotherMethod()

0

它將呼籲繼承的類派生的方法,除非你明確地調用基方法(base.AnotherMethod()