Object-Oriented Programming with Java
A comprehensive course covering Java fundamentals through object-oriented programming concepts.
This module covers Java programming from the ground up, progressing through core language features to advanced object-oriented concepts.
Topics
| # | Topic | Description |
|---|---|---|
| 1 | Introduction | Java evolution, features, JVM/JRE/JDK, basic syntax |
| 2 | Data Types & Operators | Primitives, non-primitives, type casting, operators |
| 3 | Control Statements | Selection, iteration, jump statements, methods |
| 4 | OOP Introduction | Software crisis, OOP advantages, four pillars |
| 5 | Classes & Objects | Constructors, instance methods, this keyword |
| 6 | Encapsulation | Access modifiers, getters/setters, static members |
| 7 | Arrays | 1D and 2D arrays, common operations |
| 8 | Strings | String methods, immutability, StringBuilder |
| 9 | Inheritance | Types of inheritance, super, method overriding |
| 10 | Polymorphism | Compile-time and runtime polymorphism |
| 11 | Abstraction | Abstract classes, interfaces |
| 12 | Exceptions & Threading | Exception handling, thread lifecycle, synchronization |
Prerequisites
- A Java Development Kit (JDK) installed (version 8 or later).
- A text editor or IDE (e.g., IntelliJ IDEA, VS Code, Eclipse).
How to Run Examples
Each topic has a corresponding example in the examples/ directory. Compile and run any example with:
javac ExampleName.java
java ExampleName