Nearby lessons
37 of 125Java - Polymorphism
📌 What You Will Learn
- What class and object mean, with real-life examples
- The four pillars: Encapsulation, Abstraction, Inheritance, Polymorphism
- Constructors, this, super, static and final
- Method overloading and method overriding (with a comparison table)
- Abstract classes and interfaces (including the modern changes)
- Association, Aggregation and Composition
Polymorphism is a core concept of the Java language. This lesson explains instanceof Operator with complete, runnable code examples, clear step-by-step explanations, and common mistakes to avoid with exam-style MCQs at the end.
instanceof Operator
instanceof checks whether an object is of a particular class (or its child class). It returns true or false.
Modern note: from Java 16, pattern matching lets us combine the check and the cast in one line: if (obj instanceof String s) { System.out.println(s.length()); }
Example01
📝 Key Takeaways
- Class = blueprint; Object = real thing made from it (memory in heap).
- Four pillars: Encapsulation (hide data), Abstraction (show only essentials), Inheritance (reuse parent code), Polymorphism (one name, many forms).
- Overloading = same class, different parameters, decided at compile time. Overriding = child redefines parent method, decided at run time.
- Constructor initialises the object; name = class name, no return type.
- this = current object; super = parent class; static = belongs to class; final = cannot change.
- abstract class cannot be instantiated; interface is a contract a class implements.
- Association (weak), Aggregation (has-a, part independent), Composition (strong has-a, part dies with whole).
🧠 Test Your Knowledge
1 QuestionsProgress: 0 / 1