Intelligent children pattern
This idea is similar to the Defer identification of state variables pattern.
Basically it states that the children of a Parallel hierarchies problem should know about the corresponding children of the other heirarchy.
An abstract accessor can be used to access the Operator from an object that is only know to be a Vehicle. This lets your Vehicle object have a contract about containing an Operator. This is know as the Defer identification of state variables pattern.
J2SE5.0 and above allows covariant return types in overridden methods if the object returned is a subclass of the type returned by the method with the same signature in the superclass.
C++ does not allow any overridden methods with covariant return types