在C#中,protected
成员只能在以下情况下被外部访问:
-
当派生类继承基类时,派生类可以访问基类的
protected
成员。这意味着,如果你有一个名为BaseClass
的基类,其中包含一个protected
成员,那么从BaseClass
派生的任何类都可以访问该protected
成员。 -
当类或结构声明为
internal
或public
时,可以通过在同一程序集内的其他类访问其protected internal
成员。protected internal
成员是protected
和internal
的组合,允许派生类和同一程序集内的其他类访问这些成员。
需要注意的是,protected
成员不能直接在类的实例之外访问,即使它们位于同一程序集中。换句话说,protected
成员仅限于类及其派生类的内部访问。