What is the difference between overloading and overriding?

What is the difference between overloading and overriding?

Approach: Compare compile-time vs runtime behavior.

Overloading occurs when two methods have the same name but different signatures. Overriding occurs when a subclass provides a specific implementation for a method already defined in its parent class.

Follow-up: Which one is resolved at compile time?

Key concepts: method signature, inheritance, static vs dynamic.