在C#中,接口屬性的訪問修飾符只能是public
public interface IMyInterface
{
// 公共屬性
int MyProperty { get; set; }
}
在實現此接口的類中,你可以選擇使用其他訪問修飾符(如private
、protected
等),但這些修飾符僅適用于類內部。外部代碼仍然可以通過接口訪問這些屬性,因為它們被視為public
。
例如:
public class MyClass : IMyInterface
{
// 私有屬性,僅在類內部可訪問
private int _myProperty;
// 實現接口屬性,但使用私有字段
public int MyProperty
{
get { return _myProperty; }
set { _myProperty = value; }
}
}
在這個例子中,MyClass
實現了IMyInterface
接口,并將MyProperty
屬性設置為私有。然而,外部代碼仍然可以通過IMyInterface
接口訪問MyProperty
屬性,因為它被視為public
。