Interface demo
/* Learning C# by Jesse Liberty Publisher: O'Reilly ISBN: 0596003765 */ using System; namespace InterfaceDemo { // define the interface interface IStorable { void Read(); void Write(object obj); int Status { get; set; } } // create a Document class that implements the IStorable interface class Document : IStorable { public Document(string s) { Console.WriteLine("Creating document with: {0}", s); } // implement the Read method public void Read() { Console.WriteLine( "Implementing the Read Method for IStorable"); } // implement the Write method public void Write(object o) { Console.WriteLine( "Implementing the Write Method for IStorable"); } // implement the property public int Status { get{ return status; } set{ status = value; } } // store the value for the property private int status = 0; } public class TesterInterfaceDemo { public void Run() { Document doc = new Document("Test Document"); doc.Status = -1; doc.Read(); Console.WriteLine("Document Status: {0}", doc.Status); } [STAThread] static void Main() { TesterInterfaceDemo t = new TesterInterfaceDemo(); t.Run(); } } }