The virtual definition modifier declares that this class allows extension and overrides. You cannot override a method with the override keyword unless the class has been defined as virtual.The abstract definition modifier declares that this class contains abstract methods, that is, methods that only have their signature declared and no body defined.