JavaBeginner#oop#polymorphism

What is method overloading vs overriding?

Overloading: same method name, different parameter list, within the same class — resolved at compile time. Overriding: subclass redefines a parent method with the same signature — resolved at runtime (dynamic dispatch).

Example
// Overloading
void add(int a, int b) {}
void add(double a, double b) {}
// Overriding
class Parent { void greet(){ System.out.println("Hi"); } }
class Child extends Parent { @Override void greet(){ System.out.println("Hey"); } }

Related Questions

1
JavaBeginner#keywords

What is the final keyword?

Open
2
JavaIntermediate#memory#jvm

Explain Java memory model: heap vs stack.

Open
3
JavaIntermediate#gc#memory

What is garbage collection?

Open