Object-Oriented Programming with Java Roadmap

Step by step guide to becoming an Android developer.

Back to home

Legend

Propose
Alternatives
Options

1 Java Fundamentals

Syntax, Variables, Data Types
Operators
Control Flow
Methods
Arrays

2 Introduction to OOP

What is an Object?
What is a Class?
The Four Pillars of OOP

3 Classes and Objects

Defining a Class
Creating Objects
The 'this' Keyword
Access Modifiers
Static Members

4 Encapsulation

Data Hiding
Getters and Setters
Benefits of Encapsulation

5 Inheritance

The 'extends' Keyword
The 'super' Keyword
Method Overriding
The Object Class

6 Polymorphism

Method Overloading
Method Overriding
Upcasting and Downcasting

7 Abstraction

Abstract Class
Interface
Difference between Abstract Class and Interface

8 Advanced OOP Concepts

Composition, Aggregation, Association
Coupling and Cohesion
The 'final' Keyword
Exception Handling

9 Java Collections & OOP

Understanding the Hierarchy
Polymorphism with Collections
Generics

10 SOLID Principles

SRP - Single Responsibility Principle
OCP - Open/Closed Principle
LSP - Liskov Substitution Principle
ISP - Interface Segregation Principle
DIP - Dependency Inversion Principle

11 Design Patterns

Introduction to Design Patterns
Creational Patterns (Singleton, Factory)
Structural Patterns (Adapter, Decorator)
Behavioral Patterns (Observer, Strategy)

Visit the following related paths and keep learning.