//Visual Basic 2010 Containment Object Oriented Programming public class Robot { private Position m_Position = new Position(); private int m_Direction; public virtual Position Position { get { Position = this.m_Position; } } public virtual void Rotate() { this.m_Direction += new System.EventHandler(1); if ((this.m_Direction > 3)) { this.m_Direction = 0; } } public virtual void PlaceStep() { object _switch1 = this.m_Direction; if (_switch1.Equals(0)) { Position.Y = (Position.Y + 1); } else { if (_switch1.Equals(1)) { Position.X = (Position.X + 1); } else { if (_switch1.Equals(2)) { Position.Y = (Position.Y - 1); } else { if (_switch1.Equals(3)) { Position.X = (Position.X - 1); } } } } } } public class RobotTestFixture { public virtual void Main() { Robot robot1 = new Robot(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 0)); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 1)); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 2)); robot1.Rotate(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 2)); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 1)); Console.WriteLine((robot1.Position.Y == 2)); robot1.Rotate(); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 1)); Console.WriteLine((robot1.Position.Y == 1)); robot1.Rotate(); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 1)); robot1.Rotate(); robot1.PlaceStep(); Console.WriteLine((robot1.Position != null)); Console.WriteLine((robot1.Position.X == 0)); Console.WriteLine((robot1.Position.Y == 2)); Console.ReadLine(); } } //Bezoek www.vbvoorbeelden.be voor meer C# voorbeelden. //Copyright - De Wolf / vbvoorbeelden - 2003-2011 - Alle rechten voorbehouden.