Mega Code Archive

 
Categories / C# / Class Interface
 

Illustrates implementing multiple interfaces

/* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110 */ /*   Example8_2.cs illustrates implementing multiple interfaces */ using System; // define the IDrivable interface public interface IDrivable {   // method declarations   void Start();   void Stop();   // property declaration   bool Started   {     get;   } } // define the ISteerable interface public interface ISteerable {   // method declarations   void TurnLeft();   void TurnRight(); } // Car class implements the IMovable interface class Car : IDrivable, ISteerable {   // declare the underlying field used by the   // Started property of the IDrivable interface   private bool started = false;   // implement the Start() method of the IDrivable interface   public void Start()   {     Console.WriteLine("car started");     started = true;   }   // implement the Stop() methodof the IDrivable interface   public void Stop()   {     Console.WriteLine("car stopped");     started = false;   }   // implement the Started property of the IDrivable interface   public bool Started   {     get     {       return started;     }   }   // implement the TurnLeft() method of the ISteerable interface   public void TurnLeft()   {     Console.WriteLine("car turning left");   }      // implement the TurnRight() method of the ISteerable interface   public void TurnRight()   {     Console.WriteLine("car turning right");   } } public class Example8_2 {   public static void Main()   {     // create a Car object     Car myCar = new Car();     // call myCar.Start()     Console.WriteLine("Calling myCar.Start()");     myCar.Start();     // call myCar.TurnLeft()     Console.WriteLine("Calling myCar.TurnLeft()");     myCar.TurnLeft();   } }