我想要完成與here所描述的完全相同的操作,但在C#中。用受保護的方法裝飾類
public interface IFoo { void DoSomething(); }
public class Foo : IFoo
{
public void DoSomething() {...}
protected void Bar() {...}
}
public class Foo2 : IFoo
{
private readonly Foo _foo;
public Foo2 (Foo foo) { _foo = foo; }
public void DoSomething() {...}
protected void Bar()
{
_foo.Bar(); // cannot access Bar() from here
}
}
我看了幾個類似的問題,但他們都沒有真正告訴你如何解決這個問題。試圖用受保護的方法來裝飾一個類首先要做的錯誤事情?
約'protected'整個想法是,它僅在訪問當前類和它的子類。在Java和C#中,您將永遠無法在只持有引用的類中訪問它。 –
相關問題http://stackoverflow.com/a/614844/682480 –