Why would you declare a method as \"virtual\".
What is the benefit in using virtual?
Virtual methods are similar to abstract methods in base classes except their implementation on derived classes is optional. Also you could put logic in virtual method and override these in derived classes.