Java online class
Course Instructor
Week 1: Java OOP + Arrays
Lesson 1.1: Introduction to Java & OOP
Lesson 1.2: Classes, Objects, Constructors
Lesson 1.3: Encapsulation, Inheritance, Polymorphism, Abstraction
Lesson 1.4: Arrays & Basic Problems
Practice: LC 1, 121, 217
Week 2: Strings & Recursion
Lesson 2.1: String immutability, String methods
Lesson 2.2: StringBuilder vs StringBuffer
Lesson 2.3: Recursion basics (factorial, subsets)
Lesson 2.4: Recursion in strings & arrays
Practice: LC 20, 242, 344, 383
Week 3: Collections & Hashing
Lesson 3.1: Java Collections Framework overview
Lesson 3.2: List, Set, Map deep dive
Lesson 3.3: Generics in Java
Lesson 3.4: HashMap & HashSet problems
Practice: LC 49, 347, 36, 387
Week 4: Exception Handling & Wrap-Up
Lesson 4.1: Checked vs Unchecked exceptions
Lesson 4.2: Try-catch-finally, throw & throws
Lesson 4.3: Custom Exceptions
Lesson 4.4: Arrays + Strings mix problems
Mini Project: Java Console App (Library/Task Manager CLI)
Week 5: Streams & Trees
Lesson 5.1: Streams API intro
Lesson 5.2: Functional Interfaces & Lambda expressions
Lesson 5.3: Binary Tree traversals (DFS, BFS)
Lesson 5.4: Diameter & Height problems
Week 6: Multithreading (Intro) + BSTs
Lesson 6.1: Thread & Runnable
Lesson 6.2: Thread lifecycle & synchronization basics
Lesson 6.3: BST operations (insert, delete, search)
Lesson 6.4: Validate BST, Lowest Common Ancestor
Week 7: Graphs + Spring Boot Setup
Lesson 7.1: Graph representation (Adj list, matrix)
Lesson 7.2: BFS & DFS in graphs
Lesson 7.3: Graph Connected Components
Lesson 7.4: Spring Boot Setup & REST API basics
Week 8: Concurrency + CRUD Project
Lesson 8.1: Thread safety, Locks, synchronized keyword
Lesson 8.2: Graph Cycle detection (directed/undirected)
Lesson 8.3: Spring Boot CRUD app with REST endpoints
Mini Project: CRUD REST API
Week 9: JDBC + 1D DP
Lesson 9.1: JDBC basics (Connection, Statement, ResultSet)
Lesson 9.2: Fibonacci, Climbing Stairs DP
Lesson 9.3: House Robber DP
Practice: LC 70, 198
Week 10: Transactions + 2D DP
Lesson 10.1: JDBC Transactions & Batch processing
Lesson 10.2: Unique Paths, Min Path Sum DP
Lesson 10.3: Matrix DP problems
Practice: LC 62, 64
Week 11: File I/O + JPA
Lesson 11.1: File I/O (Reader, Writer, Streams)
Lesson 11.2: Serialization & Deserialization
Lesson 11.3: Spring Boot JPA & Hibernate basics
Lesson 11.4: Edit Distance, Coin Change DP
Practice: LC 72, 322
Week 12: Integration Project
Lesson 12.1: JDBC + Spring Boot DB integration
Lesson 12.2: AtCoder DP basics
Mini Project: Spring Boot DB Integration
Week 13: Executor Framework + LCS/LIS
Lesson 13.1: Executor, Callable, Future
Lesson 13.2: Longest Increasing Subsequence
Lesson 13.3: Longest Common Subsequence
Week 14: Deadlocks + Bitmask DP
Lesson 14.1: Deadlocks & prevention
Lesson 14.2: Producer–Consumer problem
Lesson 14.3: Bitmask DP patterns
Week 15: Advanced Graphs + Thread Pools
Lesson 15.1: Thread Pools, Executors
Lesson 15.2: Dijkstra’s Algorithm
Lesson 15.3: Prim’s & Kruskal’s MST
Week 16: Union-Find + Spring Boot Project
Lesson 16.1: Union-Find & Topological Sort
Lesson 16.2: Java Memory Model (volatile, synchronized)
Project: REST API + DB + Auth
Week 17: Advanced Collections
Lesson 17.1: PriorityQueue, Deque
Lesson 17.2: ConcurrentHashMap
DSA: Hard problems mix
Week 18: Design Patterns I
Lesson 18.1: Singleton
Lesson 18.2: Factory
Lesson 18.3: Builder
Week 19: Design Patterns II + JVM
Lesson 19.1: Observer & Strategy patterns
Lesson 19.2: JVM basics, Garbage Collection
Lesson 19.3: ClassLoader & Memory Management
Week 20: Full Project + Mock Interviews
Lesson 20.1: Spring Boot Security + Testing
Lesson 20.2: Mock Coding Interview (DSA)
Lesson 20.3: Mock LLD Interview
Week 21: System Design Basics + DSA Revision
This section does not have any lessons.
Week 22: LLD with Java + DP Revision
This section does not have any lessons.
Week 23: Contest Prep (Leetcode/Codeforces) + Deployment (Heroku/AWS)
This section does not have any lessons.
Week 24: Final Mock Interviews + Project Showcase + Wrap-up
This section does not have any lessons.
