OOP is just a category whose objects are classes and whose morphisms are subtype relationship


https://en.m.wikipedia.org/wiki/Covariance_and_contravariance_(computer_science)