I've realised the big advantage of teaching OO with physical analogies. It's well accepted that OO isn't just about modelling the eworld. Physical items are great for explaining subtyping. You can view types as subsets, and Ferrari <: Car <: Vehicle is intuitive.