OOPS Syllabus
| Topic | Subtopics / What to Cover |
|---|---|
| Introduction to OOPS | Procedural vs OOP ⭐ Need of OOPS |
| Basic OOPS Concepts | Class ⭐ Object ⭐ Abstraction ⭐ Encapsulation ⭐ Inheritance ⭐ Polymorphism ⭐ |
| Encapsulation | Data hiding ⭐ Access specifiers ⭐ |
| Abstraction | Abstract class ⭐ Interface ⭐ |
| Inheritance | Types of inheritance ⭐ Method overriding ⭐ |
| Polymorphism | Compile-time ⭐ Run-time ⭐ |
| Binding | Early binding Late binding ⭐ |
| Constructors & Destructors | Default constructor ⭐ Parameterized constructor ⭐ Destructor |
| Virtual Functions | Virtual function concept ⭐ Virtual destructor ⭐ |
| Function Overloading | Rules ⭐ Operator overloading |
| Memory Management | Stack vs Heap ⭐ Dynamic memory |
| Shallow vs Deep Copy | Copy constructor ⭐ Assignment operator |
| Exception Handling | try-catch ⭐ Multiple catch finally / throw |
| Object Relationships | Association ⭐ Aggregation ⭐ Composition ⭐ |
| SOLID Principles | SRP OCP LSP ISP DIP |
| UML Basics | Class diagram |
| OOPS in C++ | this pointer ⭐ const correctness |
| OOPS in Java (Intro) | JVM basics Garbage collection |