1

一部のプロパティを同じインターフェイス クラスに対してのみ公開し、他のすべてのクラスに対して読み取り専用にすることはできますか?

4

2 に答える 2

6

たとえば、明示的な実装を使用できます。

interface IFoo {
    int Value { get; set; }
}

public class Foo : IFoo {
    public int Value { get; private set; }

    int IFoo.Value {
        get { return Value; }
        set { Value = value; }
    }
}

Fooget のみを介してアクセスすると、アクセス可能になります。IFoogetter と setter の両方を介してアクセスすると、アクセス可能になります。

使い道は?

于 2013-10-26T13:19:14.897 に答える