How to implement a property in an interface

peter picture peter · Oct 20, 2009 · Viewed 180.2k times · Source

I have interface IResourcePolicy containing the property Version. I have to implement this property which contain value, the code written in other pages:

IResourcePolicy irp(instantiated interface)
irp.WrmVersion = "10.4";

How can I implement property version?

public interface IResourcePolicy
{
   string Version
      {
          get;
          set;
      }
}

Answer

Stefan Steinegger picture Stefan Steinegger · Oct 20, 2009

In the interface, you specify the property:

public interface IResourcePolicy
{
   string Version { get; set; }
}

In the implementing class, you need to implement it:

public class ResourcePolicy : IResourcePolicy
{
   public string Version { get; set; }
}

This looks similar, but it is something completely different. In the interface, there is no code. You just specify that there is a property with a getter and a setter, whatever they will do.

In the class, you actually implement them. The shortest way to do this is using this { get; set; } syntax. The compiler will create a field and generate the getter and setter implementation for it.