在C#中,protected
字段表示该字段只能在其所在类及其子类中被访问。因此,不能直接从类的外部访问protected
字段。如果您需要从类的外部访问该字段,可以使用公共属性(public property)来实现。
例如:
class MyClass { protected int myProtectedField = 10; } class MyDerivedClass : MyClass { public void AccessProtectedField() { // 可以访问基类的受保护字段 Console.WriteLine(myProtectedField); } } class AnotherClass { public void AccessProtectedField() { MyClass obj = new MyClass(); // 下面这行代码会导致编译错误,因为不能直接访问受保护字段 // Console.WriteLine(obj.myProtectedField); } }