Back
Java Roadmap - Intermediate
Follow this step-by-step roadmap to master
java
at Intermediate level
1
Object-Oriented Programming (OOPs)
4 weeks
▹
Classes & Objects
▹
Constructors & Constructor Overloading
▹
The `this` & `super` keywords
▹
Pillars of OOP: Encapsulation (Getters/Setters, Access Modifiers)
▹
Pillars of OOP: Inheritance (single, multilevel, hierarchical)
▹
Pillars of OOP: Polymorphism (Method Overloading & Overriding)
▹
Pillars of OOP: Abstraction (Abstract Classes & Methods)
▹
The `final` keyword (for variables, methods, classes)
▹
Interfaces & `implements` keyword
▹
Static & Final keywords in detail
▹
The `Object` Class (`equals()`, `hashCode()`, `toString()`)
▹
Mini-Project: Library Management System
2
Strings & Collections Framework
3 weeks
▹
String Immutability
▹
StringBuilder & StringBuffer
▹
Collections Framework Hierarchy
▹
List Interface (ArrayList, LinkedList, Vector)
▹
Set Interface (HashSet, TreeSet, LinkedHashSet)
▹
Map Interface (HashMap, TreeMap, LinkedHashMap)
▹
Queue Interface (PriorityQueue, ArrayDeque)
▹
Stack Class
▹
Iterators & For-Each loop
▹
Comparable & Comparator Interfaces
▹
Mini-Project: Contact Book using HashMap
3
Exception Handling
2 weeks
▹
Errors vs Exceptions
▹
Exception Hierarchy (Throwable, Exception, Error)
▹
Checked vs Unchecked Exceptions
▹
Try, Catch, Finally blocks
▹
Multiple Catch Blocks
▹
The `throw` & `throws` keywords
▹
Creating Custom Exceptions
▹
Try-with-resources statement
▹
Best Practices for Exception Handling
4
File Handling & I/O Streams
2 weeks
▹
I/O Streams (Byte Streams, Character Streams)
▹
Reading & Writing Files (FileInputStream, FileOutputStream)
▹
Buffered Streams (BufferedReader, BufferedWriter)
▹
File Class for file operations
▹
Scanner for reading files
▹
Serialization & Deserialization
▹
Introduction to Java NIO (Path, Files)
▹
Mini-Project: File-based Note Taking App
5
Generics, Enums & Annotations
2 weeks
▹
Generics in Java (Generic Classes, Methods, Interfaces)
▹
Wildcards (? extends T, ? super T)
▹
Type Erasure
▹
Enums (Enumerations)
▹
Annotations (Built-in and Custom)
▹
Inner Classes (Static Nested, Non-static/Inner, Local, Anonymous)
6
Date & Time API
1 week
▹
Legacy Date/Calendar vs New API
▹
`java.time` package
▹
LocalDate, LocalTime, LocalDateTime
▹
ZonedDateTime & Timezones
▹
Period & Duration
▹
Formatting and Parsing Dates (DateTimeFormatter)
GeekDost - Roadmaps & Snippets for Developers