Information Technology- Object-Oriented Programming

Review of Basics- Recapitulative Review, Conceptual Review, Problem-based Review, Interactive Review, Comparative Review, Diagnostic Review, Integrated Review, Self-assessment Review, Visual Review, Real-world Application Review.

Introduction to OOP- Conceptual Introduction, Historical Introduction, Comparison with Procedural Programming, Example-Based Introduction, Language-Specific Introduction, Problem-Solving Perspective, UML-Based Introduction, Application-Focused Introduction.

Classes and Objects- Concrete Class, Abstract Class, Singleton Class, Static Class, Inner Class, Nested Class, Anonymous Class, Final Class, Immutable Class, Data Transfer Object (DTO).

Attributes and Methods- Instance Attributes, Class Attributes, Static Attributes (or Constants), Instance Methods, Class Methods, Static Methods, Special Methods (or Magic Methods).

Inheritance- Single Inheritance, Multiple Inheritance, Multilevel Inheritance, Hierarchical Inheritance, Hybrid Inheritance, Multipath Inheritance, Cyclic Inheritance, Virtual Inheritance.

Polymorphism- Compile-time (Static) Polymorphism, Run-time (Dynamic) Polymorphism, Ad hoc Polymorphism, Subtype Polymorphism, Coercion (Implicit Conversion) Polymorphism.

Encapsulation- Public Encapsulation, Protected Encapsulation, Private Encapsulation.

Design Patterns- Creational Patterns, Structural Patterns, Behavioral Patterns.

Exception Handling- Try-Catch Blocks, Throwing Exceptions, Finally Blocks, Exception Propagation, Checked and Unchecked Exceptions, Custom Exceptions, Resource Management with with Statement.

Advanced Topics- Mathematics, Computer Science, Physics, Biology, Chemistry, Engineering, Economics, Psychology, Philosophy, Literature.