Ho provato ad ereditare l'interfaccia e a rendere privata la proprietà dell'insieme generato automaticamente. Questo è un esempio.Ereditarietà delle proprietà con modificatore dell'accessibilità in C#
public class MyClass
{
public interface A
{
int X {get; set;}
}
public interface B : A
{
int Y {get; set;}
}
public class C : A
{
public int X {get; private set;}
}
Quando ho provato a compilarlo. Ho ricevuto un errore 'MyClass.C' does not implement interface member 'MyClass.A.X.set'. 'MyClass.C.X.set' is not public.
.
Ho provato con private set;
in iterface A
, ma ho ancora questo errore: 'MyClass.A.X.set': accessibility modifiers may not be used on accessors in an interface
.
Questo modificatore di accessibilità non è consentito in C#?
Il membro pubblico non è l'unica opzione. L'implementazione dell'interfaccia esplicita è l'altra. – svick