Abstract Base Classes: Example
female and male people have a huge number of shared properties which should be expressed in a common base class instead of duplicating the work. However, it’s impossible to have a generic “person” that is neither male nor female. (Pretend that’s true.) In this case, person should be an abstract base class.