A function is virtual when
The virtual keyword is sticky, once you declare it, all its child and derived class will have that method be virtual
virtual