text: Polymorphism allows a single definition for multiple data types.  Overloading is a specific case of polymorphism where some operators have different implementations depending on the types of arguments.