This is a structured, topic-wise guide where I document what I learn in Java — with explanations, sample code, and hands-on practice.
I believe the best way to master something is to teach it — even if it’s just to your future self.
This journal reflects my journey, doubts, solutions, and growth.
Every time I study something new, I make detailed notes to understand it deeply. One day, someone from my java study group asked me to share those notes — and that simple moment sparked an idea: Why not turn my notes into a structured journal?
That’s how this Java Learning Journal was born — not just for others, but also for my future self, to revisit concepts and track my progress.
I owe a big part of this journal to my mentor, whose brilliant content, passionate teaching & dedication to clarity have deeply inspired me 🫶.
Every concept I’ve noted here — from the basics to the tricky parts — comes alive because of the way he explains it with such purpose and precision. His energy constantly reminds me to keep learning, keep building, and keep shining — and I hope this journal reflects that same spirit. ✨
Thank you Jatin Shharma! ✨
I’ve also explored the topics on my own — did my own digging, tried out examples, wrote code snippets, and created visual diagrams — all to understand the why behind every concept better. Along the way, I’ve connected the dots to real-time doubts, interview questions, and added Git-friendly formatting to make the learning smoother.
📂 Table of Contents
- Java’s Story
- Data Types
- Variables
- Literals
- Writing First Code
- Understanding Code Execution
- Operators
- Conditional Statement
- Loops
- For Loop
- While
- Do While
- Loops Concept Check
- Methods
- Understanding Method Execution
- Wrapper Class
- Type Casting
- Method Overloading
- Arrays
- String
- String Intern Method
- String Builder And Buffer
- Classes and Objects
- Instance Variables
- Encapsulation
- This Keyword
- Constructors
- POJO Class
- Understanding toString()
- How To Compare Java Objects
- Inheritance
- Polymorphism
- Static
- Builder Design Pattern
- Abstract Class
- Interface
- Exception Handling
- File Handling
- Serialization And Deserialization
- Array Of Objects
- Collections
- Collection Hierarchy Diagram
- Collections Brain Teasers
- List
- ArrayList
- ArrayList Brain Teasers
- LinkedList
- LinkedList Methods
- Vector
- Stack
- Set
- HashSet Internal Working
- Map
- Comparisons