Question: what is the difference between polymorphism and overloading?
Answer: Polymorphism is the process to define more than one body for functions/methods with same name. Overloading IS a type of polymorphism, where the signature part must be different. Overriding is another, that is used in case of inheritance where signature part is also same.