#800 – A Property in an Interface May Include One or Two Accessors
March 14, 2013 1 Comment
Defining a property in an interface, you can define one or both of the property’s accessors.
public interface IDogInfo { int CollarSize { get; set; } string Name { get; } string SecretName { set; } }
When you implement an interface, if a property in the interface has both accessors, you must implement both accessors, and both must be public (you set an access modifier of public on the entire property).
If a property in the interface includes only one accessor, you must implement that accessor, but you can optionally also implement the other accessor.
public class Dog : IDogInfo { public int CollarSize { get; set; } // IDogInfo has just get public string Name { get { return "NotImpl"; } } // IDogInfo has just set, but we add a get public string SecretName { protected get; set; } }