一千萬個為什麽

搜索

受保護的內部在.Net中意味著什麽

Protected Means,我們只能在派生類中訪問此成員,而internal意味著我們可以使用對象訪問同一程序集中任何類型的此成員。 因此,我可以將受保護的內部成員視為同一程序集中的公共成員。以及作為不同程序集中的受保護成員

修改</強>

namespace pracConsole
    {
class Class1
{
    protected internal int val;
    public int hello()
    {
        Console.WriteLine("This is method pracConsole.hello");
        Console.ReadLine();
        return 1;

    }
}
class program
{
    static void Main(string[] args)
    {
        Class1 _class1 = new Class1();
        _class1.val = 3;
        _class1.hello();
        Console.ReadLine();
    }
}

}

請參閱我能夠在非派生類中訪問,保護內部...所以它在同一個程序集中作為公共工作...你怎麽說。

最佳答案

這是一個令人困惑的問題。

protected means "only this class and derived classes".

internal means "only classes in this assembly".

protected internal means "protected OR internal" (any class in the same assembly, or any derived class - even if it is in a different assembly).

即它表示“受保護的AND內部”(僅在同一程序集中的派生類)。

轉載註明原文: 受保護的內部在.Net中意味著什麽