Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☕ Master Java Programming: Journey to Core & Advanced

Welcome to my Java learning repository! This project serves as a comprehensive, lesson-by-lesson documentation of my path to mastering Java. Inspired by standard educational pathways and built from scratch, this repository contains structured code examples, interactive notes, and implementation screenshots.


🚀 Learning Path & Repository Structure

Each lesson below is structured as a dedicated directory containing:

  • 📝 README.md - Concept explanations, theory, and references.
  • 💻 *.java - Well-documented source code files.
  • 📸 output.png - Screenshots demonstrating terminal execution.

🗺️ Detailed Syllabus & Lesson Directory

📂 Directory / Lesson 🔑 Core Topics Covered
🌟 PART 1: CORE FUNDAMENTALS
📁 L01_Java_Introduction_and_Setup Java Intro, Java Get Started (JDK Setup & IDE Configuration)
📁 L02_Java_Syntax_and_Output Java Syntax, Java Output (System.out Methods), Java Comments
📁 L03_Variables_and_Data_Types Java Variables, Data Types, Primitive vs Reference Types, Type Casting
📁 L04_Operators_and_Math Java Operators, Java Math Class, Essential Math Methods
📁 L05_Working_with_Strings Java Strings, String Manipulation, Essential String Methods
📁 L06_Booleans_and_Decision_Making Java Booleans, Conditional Statements (If...Else, Switch)
📁 L07_Loops_and_Control_Statements While Loop, For Loop, Flow Control (Break & Continue)
📁 L08_Arrays Single/Multi-dimensional Arrays, Essential Arrays Methods
⚡ PART 2: METHODS & FUNCTIONAL JAVA
📁 L09_Java_Methods Declaring Methods, Parameters, Method Overloading
📁 L10_Scope_and_Recursion Variable Scope (Block, Method, Class), Advanced Recursion Concepts
📁 L11_Methods_Challenge_and_Debugging Method Challenges, Common Errors (Syntax, Runtime), Java Debugging
🧩 PART 3: OBJECT-ORIENTED PROGRAMMING (OOP)
📁 L12_OOP_Basics_Classes_and_Objects OOP Paradigms, Classes/Objects, Class Attributes & Methods
📁 L13_Constructors_and_this_Keyword Java Constructors, the this Keyword, OOP Challenge
📁 L14_Modifiers_and_Encapsulation Access/Non-Access Modifiers, Encapsulation, Getters/Setters, Packages/API
📁 L15_Inheritance_and_super_Keyword Subclasses, Superclasses, Method Overriding, super Keyword
📁 L16_Polymorphism_and_Inner_Classes Runtime Polymorphism, Nested and Inner Classes
📁 L17_Abstraction_and_Interfaces Abstract Classes, Interfaces, Anonymous Inner Classes
📁 L18_Java_Enums Enum Types, Enums in Switch, Iterating over Enums
🛠️ PART 4: INPUTS, DATES & EXCEPTION HANDLING
📁 L19_User_Inputs_and_Dates Java Scanner Class, Standard Keyboard Input, Java Date & Time API
📁 L20_Exception_Handling Try...Catch blocks, Multiple Exceptions, try-with-resources, Throw/Throws
📦 PART 5: DATA STRUCTURES & JAVA COLLECTIONS
📁 L21_Java_Collections_and_Wrapper_Classes Collections Overview, Iterator Interface, Wrapper Classes
📁 L22_Lists_ArrayList_and_LinkedList ArrayList vs LinkedList, List Sorting, Collections Class Methods
📁 L23_Sets_HashSet_TreeSet_LinkedHashSet Uniqueness in Set, HashSet, LinkedHashSet, TreeSet (Sorted Set)
📁 L24_Maps_HashMap_TreeMap_LinkedHashMap Key-Value pairs, HashMap, LinkedHashMap, TreeMap, Map Methods
📁 L25_Java_Algorithms_and_Collections_Methods Sorting, Searching, Shuffling, and Custom Comparator Algorithms
💾 PART 6: FILE HANDLING & STREAM I/O
📁 L26_File_Handling Java File Class, Create, Read, Write, and Delete files safely
📁 L27_Java_IO_Streams FileInputStream, FileOutputStream, BufferedReader, BufferedWriter
🔥 PART 7: ADVANCED CONCEPTS
📁 L28_Generics_and_Annotations Generic Classes, Generic Methods, Custom Metadata Annotations
📁 L29_RegEx_and_String_Manipulation Regular Expressions, Pattern Matching, Custom Validations
📁 L30_Multithreading Concurrency, Thread Creation, Runnable Interface, Synchronization
📁 L31_Lambda_Expressions Functional Interfaces, Lambdas syntax, Stream API processing
📁 L32_Advanced_Sorting Comparable vs Comparator, sorting complex entities
📚 PART 8: REFERENCES & PROJECTS
📁 L33_Java_Keywords_and_System_Methods Cheat Sheets, Reserved Keywords reference, System Class utilities
📁 L34_Mini_Projects_and_How_Tos Real-world Mini Projects, Practical Code How-To implementations
📁 L35_Certification_Prep_Notes Pre-assessment mocks, Certification reference study materials

🛠️ Environment & Tools Used

  • JDK Version: Oracle OpenJDK 21 or higher
  • IDE: IntelliJ IDEA / VS Code
  • Build System: Gradle / Bare Compiler
  • Operating System: Windows / Linux / macOS

⚖️ License & Copyright

Copyright © 2026 Sahan Udara. All rights reserved.

This repository, its custom notes, source code structures, and related visual assets are the original creations of Sahan Udara. Feel free to use the code for educational purposes, study along, or fork the repository for personal study references.


Made with ☕ and Determination by Sahan Udara

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages